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.