On 02/26/2015 12:26 PM, Matthew Flatt wrote:
Thank you! I'm still trying to understand how the current expansion
process works. This seems easier to reason about, so for me you're
hitting goal 2. And the comparison is helping me understand the current
process as well.
I've been working on a new macro expander for Racket, and I'm starting
to think that it will work. The new expander is not completely
compatible with the current expander --- and that will be an issue if
we eventually go forward with the change --- but most existing code
Here's a report on my current experiment:
The goals for a new expander are
1. to replace a complicated representation of syntax objects with a
simpler one (and, as a result, avoid some performance and
submodule-re-expansion problems that have been too difficult to fix
with the current expander);
2. to find a simpler model of binding than the current one, so that
it's easier to explain and reason about scope and macros; and
3. to implement the new expander in Racket instead of C.
I have possibly succeeded on 1, possibly succeeded to some degree on 2,
and temporarily given up on 3.
You received this message because you are subscribed to the Google Groups "Racket
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send email to racket-...@googlegroups.com.
To view this discussion on the web visit
For more options, visit https://groups.google.com/d/optout.