Resolve types in lambda arguments, recursively substitute
[scheme.git] / tests.scm
1 (load "typecheck.scm")
2
3 (define (test actual expected)
4   (when (not (equal? actual expected))
5     (error #f
6            (format "test failed:\nexpected: ~a\nactual:   ~a"
7                    expected actual))))
8
9 (test (typecheck '(lambda (x) (+ ((lambda (y) (x y 3)) 5) 2)))
10       '(abs (abs int (abs int int)) int))