Program-Transformation.Org: The Program Transformation Wiki
The Khepera Transformation System

A system for DSL implementation by source-to-source transformation

Khepera is a tool kit for rapid implementation and long-term maintenance of domain-specific languages via source-to-source transformation, separated into three phases: parsing, AST transformation, and pretty-printing.

Transformation language

For the implementation of AST transformations, the Khepera system offers a special `little language' that is compiled into C code. This transformation language allows transformation rules to be specified that perform conditional pattern-matches on trees. A special construct for iterating over children is provided, as well as a construct for escaping to C.