From 4f025b96cfe6bc121ea9b37eb26d8814dd838647 Mon Sep 17 00:00:00 2001 From: Felix Perktold Date: Sun, 21 Dec 2025 14:01:36 +0100 Subject: start implementing eval --- lisp.y | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'lisp.y') 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 -- cgit v1.2.3