expected actual))))
(define (test . xs) (apply test-f (cons equal? xs)))
-(define (test-types . xs) (apply test-f (cons types-unify? xs)))
+(define (test-types . xs) (apply test-f (cons types-equal? xs)))
(define (read-file file)
(call-with-input-file file
(define (test-prog prog exit-code)
(display prog)
(newline)
- (compile-to-binary prog "/tmp/test-prog" 'darwin)
+ (compile-to-binary prog "/tmp/test-prog" host-os)
(test (system "/tmp/test-prog") exit-code))
(define (test-prog-stdout prog output)
(display prog)
(newline)
- (compile-to-binary prog "/tmp/test-prog" 'darwin)
+ (compile-to-binary prog "/tmp/test-prog" host-os)
(system "/tmp/test-prog > /tmp/test-output.txt")
(let ((str (read-file "/tmp/test-output.txt")))
(test str output)))
(test-types (typecheck '(let ([bar (lambda (y) y)]
[foo (lambda (x) (foo (bar #t)))])
foo))
- '(abs bool t0))
+ '(abs bool a))
(test-types (typecheck '(let ([bar (lambda (y) y)]
[foo (lambda (x) (foo (bar #t)))])
bar))
- '(abs t0 t0))
+ '(abs a a))
(test-prog '(+ 1 2) 3)
(test-prog '((lambda (x) ((lambda (y) (+ x y)) 42)) 100) 142)