Meta Programming With Concrete Object Syntax
Stratego -- Strategies for Program Transformation
E. Visser.
Meta-programming with concrete object syntax.
In D. Batory and C. Consel, editors,
Generative Programming and Component Engineering (GPCE'02), Lecture Notes in Computer Science. Springer-Verlag, October 2002.
To appear.
Abstract
Meta programs manipulate structured representations (abstract syntax)
of programs. The distance between the concrete syntax meta-programmers
use to reason about programs and the notation for abstract syntax
manipulation provided by general purpose (meta-) programming languages
is too great for many applications. In this paper it is shown how the
syntax definition formalism
SDF can be employed to fit a
meta-programming language with concrete syntax notation for composing
and analyzing object programs. As a case study, the addition of
concrete syntax to the program transformation language Stratego is
presented. The approach is then generalized to arbitrary
meta-languages.
Preprint
CategoryPaper