Added TODO

This commit is contained in:
Justin Ethier 2017-01-03 19:01:24 -05:00
parent 0f65631cdf
commit 27538b454c

View file

@ -109,6 +109,8 @@ Most of the transformations follow a similar pattern of recursively examining an
((app? exp) (reduce union (map search exp) '())) ((app? exp) (reduce union (map search exp) '()))
(else (error "unknown expression: " exp)))) (else (error "unknown expression: " exp))))
TODO: mention nanopass, which seems to be a better approach but is R6RS so not really an option for this project :(
### Macro Expansion ### Macro Expansion
Macro expansion is one of the first transformations. Any macros the compiler knows about are loaded as functions into a macro environment, and a single pass is made over the code. When the compiler finds a macro the code is expanded by calling the macro. The compiler then inspects the resulting code again in case the macro expanded into another macro. Macro expansion is one of the first transformations. Any macros the compiler knows about are loaded as functions into a macro environment, and a single pass is made over the code. When the compiler finds a macro the code is expanded by calling the macro. The compiler then inspects the resulting code again in case the macro expanded into another macro.