Add test case
[scheme.git] / tests.scm
index bcda209fe2b069bc3778b5f80665877203d067cb..cd0d98be49e20a11140b0e533281793ed4e9643c 100644 (file)
--- a/tests.scm
+++ b/tests.scm
                     
              (pow 3 2))
           8)
+
+(test-prog '(let ([pow (lambda (p y)
+                        (let ([go (lambda (n x)
+                                    (if (= n 0)
+                                        x
+                                        (go (- n 1) (* x y))))])
+                          (go p 1)))])
+             (pow 4 2))
+          16)
+
+(test-prog-stdout '(let ([f (lambda (n)
+                             (if (= n 0)
+                                 0
+                                 (let ()
+                                   (print "a")
+                                   (g (- n 1)))))]
+                        [g (lambda (m)
+                             (let ()
+                               (print "b")
+                                (f (- m 1))))])
+                        (f 10)) "ababababab")