cyclone/test-opt2.scm
Justin Ethier a2138e6dc0 New file
2016-05-20 22:53:28 -04:00

23 lines
588 B
Scheme

(import (scheme base)
(scheme char)
(scheme file)
(scheme lazy)
(scheme read)
(scheme write)
(scheme eval)
)
(define (assert:equal msg actual expected)
(if (not (equal? actual expected))
(error "Unit test failed [" msg "] actual [" actual "] expected [" expected "]")
(set! *num-passed* (+ *num-passed* 1))))
;; Adder example
(define (make-adder x)
(lambda (y) (+ x y)))
(define decrement (make-adder -1))
(assert:equal "Adder #2" (decrement 42) 41)
(assert:equal "Application example"
((lambda (x) x) (+ 41 1))
42)