An update: http://www.cs.utah.edu/~mflatt/scope-sets-3/
The write-up is mostly new from section 5 through section 11: 5 First-Class Definition Contexts 6 Rename Transformers 7 Modules and Phases 8 The Top Level 9 The Syntax-Function Zoo 10 Compatibility with the Current Racket Expander 11 Debugging Support Section 7 was in the earlier drafts as section 5, but it was wrong. Section 10 was formerly 8, but it's revised and expanded. On the implementation side, `make` now completes without error (including documentation). It uses about the same space and time as the current expander, but just slightly more of each; I'm optimistic about further improvement. The core Racket tests pass, but it's not hard to find other tests that fail. Here are the packages that I've forked to address incompatibilities (mostly small changes) where the starred ones are new or updated since my last report: compatibility drracket r5rs redex compiler * macro-debugger * racklog scribble * typed-racket * htdp * While working on performance, I ended up converting the implementation of immutable hash tables from AVL trees to HAMTs. The change was a substantial improvement for representing scope sets, but most anything that uses immutable hash tables can benefit. After I get more tests passing and update documentation, I'll encourage you to try it out --- maybe two weeks from now. -- You received this message because you are subscribed to the Google Groups "Racket Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/20150325203205.986B46501BC%40mail-svr1.cs.utah.edu. For more options, visit https://groups.google.com/d/optout.
