When using
concrete syntax for the
object language? the input is parsed against the combined syntax of the object language (for example Tiger, Java, XML or Stratego) and the
meta language? (in this case Stratego).
This will result in an
Abstract Syntax Tree that contains a mixture of meta- and object language abstract syntax. Since the
meta language? compiler only deals with the meta-language abstract syntax, the embedded object language abstract syntax needs to be expressed in terms of meta abstract syntax.
For Stratego this transformation is indepedent of the object language and is therefore generic. The
meta explode transformation component implements this explosion. It is used by the
Stratego Compiler
CategoryConcreteObjectSyntax