projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
altos/lisp: Add scheme-style bools (#t and #f)
[fw/altos]
/
src
/
lisp
/
ao_lisp_rep.c
diff --git
a/src/lisp/ao_lisp_rep.c
b/src/lisp/ao_lisp_rep.c
index a1f9fa1f4b9be8834a459a7598d4a82e8d701eef..ef7dbaf283db697f0c0e0f0c34e6c5831a0e90ed 100644
(file)
--- a/
src/lisp/ao_lisp_rep.c
+++ b/
src/lisp/ao_lisp_rep.c
@@
-20,17
+20,10
@@
ao_lisp_read_eval_print(void)
ao_poly in, out = AO_LISP_NIL;
for(;;) {
in = ao_lisp_read();
ao_poly in, out = AO_LISP_NIL;
for(;;) {
in = ao_lisp_read();
- if (
!in
)
+ if (
in == _ao_lisp_atom_eof
)
break;
break;
-// printf ("in: "); ao_lisp_poly_print(in); printf("\n");
out = ao_lisp_eval(in);
if (ao_lisp_exception) {
out = ao_lisp_eval(in);
if (ao_lisp_exception) {
- if (ao_lisp_exception & AO_LISP_OOM)
- printf("out of memory\n");
- if (ao_lisp_exception & AO_LISP_DIVIDE_BY_ZERO)
- printf("divide by zero\n");
- if (ao_lisp_exception & AO_LISP_INVALID)
- printf("invalid operation\n");
ao_lisp_exception = 0;
} else {
ao_lisp_poly_print(out);
ao_lisp_exception = 0;
} else {
ao_lisp_poly_print(out);