summary refs log tree commit diff stats
path: root/factorial.lith
diff options
context:
space:
mode:
authorSudipto Mallick <smallick.dev+lith@gmail.com>2020-04-21 17:18:21 +0000
committerSudipto Mallick <smallick.dev+lith@gmail.com>2020-04-22 10:10:02 +0000
commitc8d8d9015ff56c538986b24fc58af2aa42c0a5f7 (patch)
tree7753a907f8b72921358f84ab3a1c800e0538bf01 /factorial.lith
parent4d627e62cd74edae35f73aa460689086ef4d06ff (diff)
downloadlith-c8d8d9015ff56c538986b24fc58af2aa42c0a5f7.tar.gz
added standard library and example programs
Diffstat (limited to 'factorial.lith')
-rw-r--r--factorial.lith13
1 files changed, 13 insertions, 0 deletions
diff --git a/factorial.lith b/factorial.lith
new file mode 100644
index 0000000..2349fb7
--- /dev/null
+++ b/factorial.lith
@@ -0,0 +1,13 @@
+;;;; factorial.lith
+;;;; the factorial program written in lith
+
+(define (! n)
+    (if (< n 2)
+        1
+        (* n (! (- n 1)))))
+
+(define (fac n)
+    (apply * (range 1 n)))
+
+(print (! 5) (! 6))
+(print (fac 10))