Session 19
Hint 2
Use the return type of the function to choose the ways you assemble the answer for each case.
lexical-address returns an expression identical to
its argument, except that the variable references have been
replaced by their lexical addresses.
So: For variable references, return a lexical address. For the other three cases, call the constructor for the kind of expression being processed.