diff options
| -rw-r--r-- | src/lisp/Makefile | 1 | ||||
| -rw-r--r-- | src/lisp/ao_lisp_make_const.c | 20 | 
2 files changed, 7 insertions, 14 deletions
| diff --git a/src/lisp/Makefile b/src/lisp/Makefile index 9c99f05c..aa542021 100644 --- a/src/lisp/Makefile +++ b/src/lisp/Makefile @@ -19,6 +19,7 @@ SRCS=\  	ao_lisp_frame.c \  	ao_lisp_lambda.c \  	ao_lisp_eval.c \ +	ao_lisp_rep.c \  	ao_lisp_error.c   OBJS=$(SRCS:.c=.o) diff --git a/src/lisp/ao_lisp_make_const.c b/src/lisp/ao_lisp_make_const.c index bb4afbfb..4fc43e58 100644 --- a/src/lisp/ao_lisp_make_const.c +++ b/src/lisp/ao_lisp_make_const.c @@ -105,20 +105,12 @@ main(int argc, char **argv)  	ao_lisp_atom_set(ao_lisp_atom_poly(a),  			 ao_lisp_atom_poly(a)); -	for (;;) { -		sexpr = ao_lisp_read(); -		if (!sexpr) -			break; -		printf ("sexpr: "); -		ao_lisp_poly_print(sexpr); -		printf("\n"); -		val = ao_lisp_eval(sexpr); -		if (ao_lisp_exception) -			exit(1); -		printf("\t"); -		ao_lisp_poly_print(val); -		printf("\n"); -	} +	/* end of file value */ +	a = ao_lisp_atom_intern("eof"); +	ao_lisp_atom_set(ao_lisp_atom_poly(a), +			 ao_lisp_atom_poly(a)); + +	ao_lisp_read_eval_print();  	/* Reduce to referenced values */  	ao_lisp_collect(); | 
