At 08:51 AM 8/20/98 +0200, Michael Sperber [Mr. Preprocessor] wrote:
>>>>> "Craig" == Craig Lanning
<CraigL(a)internetx.net> writes:
Craig> That still doesn't explain how using macroexpand limits the
Craig> complexity of the macros that you can write.
Using in itself doesn't. However, if I *need* macroexpand to write
the macro and check the quoting/unquoting and the hygiene, there is a
limit at least to my perception as to what size macro expansions I can
still grok. Maybe it gets better with practice.
You can build any size macro with relative ease by building it incrementally
and using MACROEXPAND to check it.
Craig> Macros do not really reference bindings. They alter the
lexical environment
Craig> by making potentially complex substitutions.
That's what they do in Common Lisp. In Scheme, it's different.
How are they different in Scheme?
--
Cheers =8-} Chipsy
Friede, Völkerverständigung und überhaupt blabla
Craig Lanning
E-Mail: CraigL(a)InternetX.net