Computational reflection is a well known technique applied in many existing programming languages ranging from functional
to object-oriented languages. In this paper we study the possibilities and benefits of introducing and using reflection in
rule-based model transformation languages. The paper identifies some language abstractions to achieve structural and behavioral
reflection. Every reflective feature is motivated by examples of problems derived from the experience with currently used
transformation languages. Example solutions are given by using an experimental language with reflective capabilities.
The paper also outlines possible implementation strategies for adding reflection to a language and discusses their advantages
and disadvantages.
Keywords reflection - model transformation languages - MDE - MISTRAL