This page has been validated.
Steele and Sussman
35
The Art of the Interpreter
variable. If there is no such binding, then the intent is to initialize a top-level variable; EV-TOP-LEVEL-SETQ
locates the top-level environment (which is always at the end of any environment) and creates a new binding by altering the environment structure.
We also modify EVAL
to recognize PROGN
. EVPROGN
is a tail-recursive loop which evaluates each subform of the PROGN
form in turn, throwing away each value but the last. {Note PROGN
Wizardry}