[plt-scheme] New PLT Redex available in CVS
By way of introduction:
PLT Redex is a domain-specific language (embedded in DrScheme) for
implementing and experimenting with Felleisen/Hieb-style reduction
systems. It includes a facility for writing down the reduction
systems in a notation similar to that used in papers and a tool that,
given reduction system and an initial term, allows you to explore its
(potentially infinite) reduction graph starting. For details, see
http://people.cs.uchicago.edu/~robby/pubs/papers/rta2004-mfff.pdf
Recent changes:
- 18x speedup (for the beginner language test suite benchmark)
- improved the way in-hole pattern matching works. Got rid of the
"multiple hole interference" error messages. The in-hole+,
in-hole*, and in-named-hole+ patterns are gone and in-named-hole
has one fewer argument. Also, `hole' is no longer implicitly bound.
- More interesting uses of `in-hole' now work, eg:
F = (hole v) | (E hole)
E = F[E] | hole
and other uses of context decomposition that aren't directly
involved in reductions.
- added `in-hole' to the term macro, meaning that you don't have
unquote to put things back in to the hole on the rhs of a
reduction.
- replaced the `replace' function with `plug'. It does the same job,
but only gets two arguments now.
The new version is available in CVS.
Robby