aful/afl/tests/test-afl-racket.rkt
2015-07-17 13:53:02 -04:00

25 lines
845 B
Racket

#lang afl racket/base
(module+ test
(require rackunit)
(check-equal? (map (+ % 1) '(1 2 3))
'(2 3 4))
(check-equal? (map (+ % %2) '(1 2 3) '(1 2 3))
'(2 4 6))
(check-equal? ((apply list* % %&) 1 '(2 3))
'(1 2 3))
(check-equal? ((* 1/2 %#:m (* %#:v %#:v)) #:m 2 #:v 1)
1)
(check-equal? (let ([x ("I am x")])
(#λx))
"I am x")
(check-equal? ((begin (set! % "%") %1) "%1")
"%")
(check-equal? (let ([lambda "not lambda"]
[define-syntax "not define-syntax"]
[make-rename-transformer "not"]
[syntax "not"])
(let-syntax ([#%app (syntax-rules () [(app f x) (f 4)])])
(#λ% 3)))
4)
)