Wed Jul 22 11:21:27 CEST 2009
Phase namespace problems
It's about time I understand these things:
/home/tom/staapl/staapl/tools/stx.ss:125:5: compile: unbound
identifier (and no #%app syntax transformer is bound) at: let-syntax
There are two sides of the coin: the _importer_ needs to make sure
that the identifiers it wants to use at different phases are loaded
correctly. The _exporter_ needs to make sure that all identifiers
referenced at all stages are available at the definition site.
What I forgot was a (require (for-template scheme/base)) at the
definition site, which made the `let-syntax' identifier unknown.
TODO: find a set of rules to debug such statements. Look here at
the for-meta form.
Turn this into a question: why is a "(require (for-template
scheme/base))" necessary if the use point has the scheme/base already