|
|
@@ -51,6 +51,8 @@ |
|
|
|
`((test . ,(lambda function-args |
|
|
|
(display "test function called") |
|
|
|
(newline))) |
|
|
|
(begin . ,(lambda function-args |
|
|
|
(mapn lisp-eval function-args))) |
|
|
|
(if . ,(lambda function-args |
|
|
|
(match function-args |
|
|
|
((e x y) (if (lisp-eval e) |
|
|
@@ -105,7 +107,7 @@ |
|
|
|
(lisp-exit "malformed lambda expression"))) |
|
|
|
(_ (lisp-exit "malformed lambda expression"))))))) |
|
|
|
|
|
|
|
(lisp-eval body)) |
|
|
|
(lisp-eval (cons 'begin body))) |
|
|
|
|
|
|
|
(call/cc (lambda (lisp-exit) |
|
|
|
(cons #t (lisp body (list (list)) (compose lisp-exit (curry cons #f)))))))) |