Stratego Regular

Stratego -- Strategies for Program Transformation


Stratego Regular is a package of tools for working with tree languages. A tree language is a set of trees define by a tree grammar. Stratego Regular defines the concrete and abstract syntax of RTG, a language for regular tree grammars, and RHG, a language for regular hedge grammars?. The RTG and RHG languages are used to define tree languages.


  • sdf2rtg? -- generates an abstract syntax definition in RTG from an SDF syntax definition.
  • rtg2sig -- generates a Stratego signature from an abstract syntax definition in RTG.
  • format-check? -- Check if an ATerm is part of the language defined by an RTG.
  • rtg2typematch -- Generates a duck-typing based strategy that checks if an ATerm is of a type defined in an RTG.

Download and Installation

Stratego Regular is part of StrategoXT from release 0.10.