altos/lisp: Evaluate macros once, then smash them into place
authorKeith Packard <keithp@keithp.com>
Tue, 15 Nov 2016 17:55:22 +0000 (09:55 -0800)
committerKeith Packard <keithp@keithp.com>
Mon, 20 Feb 2017 19:16:51 +0000 (11:16 -0800)
commit974717eb9dad105c9897ee24f953d98d57eaec77
treeea77eec1b39f859353f17ad384950f6bd982c569
parentb3b5bd2c14cfcde6c551a87ee6da08a53f1e4bc6
altos/lisp: Evaluate macros once, then smash them into place

This assumes that macros are all pure functions, which should be true
for syntactic macros.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/lisp/Makefile
src/lisp/ao_lisp.h
src/lisp/ao_lisp_builtin.c
src/lisp/ao_lisp_const.lisp
src/lisp/ao_lisp_eval.c
src/lisp/ao_lisp_make_const.c
src/lisp/ao_lisp_os.h