Ziggurat is a framework for writing extensible programming languages, and for defining static semantics for those languages. In other words, it is a language designer's toolkit.
Ziggurat is based on macros. When building a language using Ziggurat, it is easy to make that language extensible by adding a macro system. Ziggurat macros allow for incremental extension of the language by rewriting. What makes Ziggurat different from other macro systems is that Ziggurat allows the language extender to optionally define static semantics for her new language, and connect these static semantics amongst language levels. This makes it possible to write specialized analysis algorithms for the higher-level languages, either for optimization purposes, profiling purposes, debugging purposes, or whatever task analysis is put to.
Strangely enough this project from Olin Shivers and David Fisher was not mentioned here before.
Those with access may want to check out the paper on Ziggurat in the September 2008 double issue of JFP.
Recent comments
12 hours 53 min ago
14 hours 41 min ago
17 weeks 5 days ago
17 weeks 5 days ago
17 weeks 5 days ago
23 weeks 5 days ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 34 weeks ago