The compiler and internal definitions
We argued in section 4.1.6 that internal definitions for block structure should not be considered ''real''
define
s. Rather, a procedure body should be interpreted as if the internal variables being
define
d were installed as ordinary
lambda
variables initialized to their correct values using
set!
. Section 4.1.6 and exercise
4.16
showed how to modify the metacircular interpreter to accomplish this by scanning out internal definitions. Modify the compiler to perform the same transformation before it compiles a procedure body.