summaryrefslogtreecommitdiff
path: root/lisp.y
diff options
context:
space:
mode:
Diffstat (limited to 'lisp.y')
-rw-r--r--lisp.y10
1 files changed, 8 insertions, 2 deletions
diff --git a/lisp.y b/lisp.y
index 93dd877..8ed479d 100644
--- a/lisp.y
+++ b/lisp.y
@@ -28,8 +28,14 @@ static int is_integer(double x) {
%start sexprs
%%
-sexprs: sexpr { print_value($1); printf("\n"); }
- | sexprs sexpr { print_value($2); printf("\n"); };
+sexprs: sexpr
+ {
+ print_value(eval(global_env, $1)); printf("\n");
+ }
+ | sexprs sexpr
+ {
+ print_value(eval(global_env, $2)); printf("\n");
+ };
sexpr: atom
| list