'int)
(test-prog '(+ 1 2) 3)
+(test-prog '(bool->int (= 2 0)) 0)
(test-prog '((lambda (x) ((lambda (y) (+ x y)) 42)) 100) 142)
(test-prog '(* 10 5) 50)
(f f (- n 1) (+ x 1)))))]
(inc inc 3 2))
5)
+
+(test-prog '(let ([go (lambda (n m x)
+ (if (= n 0)
+ x
+ (go (- n 1) m (* x m))))]
+ [pow (lambda (p y) (go p y 1))])
+
+ (pow 3 2))
+ 8)