Page:Scheme - An interpreter for extended lambda calculus.djvu/37



evaluates its first argument, with a return address of. examines the resulting, and gives either the second or third argument to   depending on whether the  was non-  or.

As it was in the beginning, is now, and ever shall be:  without end. (Amen, amen.)

merely feeds its second argument to  after constructing a fiendishly clever environment structure. This is done in two stages: first the skeleton of the structure is created, with null environments in the closures of the bound functions; next the created environment is clobbered into each of the closures.