22 lines
744 B
Scheme
22 lines
744 B
Scheme
(define (-& x y k) (k (- x y)))
|
|
(define (zero?& x k) (k (zero? x)))
|
|
(define (halt x) x)
|
|
|
|
(letrec ((even? (lambda (n ktail)
|
|
(zero?& n
|
|
(lambda (x1)
|
|
(if x1
|
|
#t
|
|
(-& n 1
|
|
(lambda (x2)
|
|
(odd? x2 ktail))))))))
|
|
(odd? (lambda (n ktail)
|
|
(zero?& n
|
|
(lambda (x1)
|
|
(if x1
|
|
#f
|
|
(-& n 1
|
|
(lambda (x2)
|
|
(even? x2 ktail)))))))))
|
|
(even? 12 halt))
|