X-Git-Url: http://git.lukelau.me/?a=blobdiff_plain;f=tests.scm;h=cd0d98be49e20a11140b0e533281793ed4e9643c;hb=469d66c04e8458d7e4e8441ffe649e4ced85575d;hp=bcda209fe2b069bc3778b5f80665877203d067cb;hpb=8c2beb7c6589872bd9134e1c825c8a50adb11cc0;p=scheme.git diff --git a/tests.scm b/tests.scm index bcda209..cd0d98b 100644 --- a/tests.scm +++ b/tests.scm @@ -112,3 +112,24 @@ (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")