6533b859fe1ef96bd12b7fb2

RESEARCH PRODUCT

Model Transformation Languages and Their Implementation by Bootstrapping Method

Janis BarzdinsAudris KalninsEdgars RencisSergejs Rikacovs

subject

Domain-specific languageTheoretical computer scienceProgramming languageComputer scienceModel transformationFirst languagecomputer.software_genreTransformation languageThird-generation programming languageTransformation (function)CompilercomputerBootstrapping (compilers)computer.programming_language

description

In this paper a sequence of model transformation languages L0, L1, L2 is defined. The first language L0 is very simple, and for this language it is easy to build an efficient compiler to C++. The next language L1 is an extension of L0, and it contains powerful pattern definition facilities. The last language L2 is of sufficiently high level and can be used for implementation of traditional pattern-based high level model transformation languages, as well as for the development of model transformations directly. For languages L1 and L2 efficient compilers have been built using the bootstrapping method: L1 to L0 in L0, and L2 to L1 in L1. The results confirm the efficiency of model transformation approach for domain specific compiler building.

https://doi.org/10.1007/978-3-540-78127-1_8