[plt-scheme] Where is macroexpand in PLT Scheme?

From: Robby Findler (robby at cs.uchicago.edu)
Date: Tue Nov 11 16:09:00 EST 2003

At Tue, 11 Nov 2003 13:00:32 -0800 (PST), Bill Clementson wrote:
> The expansion seems to do an "expand" rather than an
> "expand-to-top-level". I've found that
> "expand-to-top-level" is more useful to me in
> understanding what the macro is doing, why did you
> choose to use "expand" instead? What type of
> information is shown in "expand" that you feel would
> be useful in understanding a macro expansion? (I just
> want to understand the rationale as I played around
> with both and I couldn't understand the value of the
> output produced by "expand". I saw that it might be
> useful for the DrScheme tool implementer, but I
> couldn't see it's value for the "normal" macro writer.
> For the normal macro writer, I would have thought that
> "expand-to-top-level" was more useful)

Probably because I've never heard of expand-to-top-level. :)

Technically, it uses expand-syntax-top-level-with-compile-time-evals.
Details on it are in Help Desk.

> Also, the "General Info" on the right-hand side of the
> expansion always seems to have a colorer.ss structure
> as the source. What is the significance of this? 

Try clicking around in the expansion. That info changes based on the
syntax object you're looking out.


Posted on the users mailing list.