Page:AITR-474.djvu/29

 PROG; it is never used to return a value of any kind. LAMBDA-expressions are used only to bind temporary variables. In addition, CONS, CAR, CDR, RPLACA, and RPLACD are used in the creation and manipulation of environments.

We may draw a parallel between each of these constructs and an equivalent machine-language (or rather, assembly language) construct:

PROG A single program module.

GO A branch instruction. PROG tags correspond to instruction labels.

RETURN Exit from program module.

PROGN Sequencing of several instructions.

COND Conditional branches, used in a disciplined manner. One may think of

as representing the sequence of code

which admits of some optimizations, but we shall not worry about this. (The MacLISP compiler does, but we do not depend at all on this fact.)

SETQ Load register, or store into memory.