出版社:Vilnius University, University of Latvia, Latvia University of Agriculture, Institute of Mathematics and Informatics of University of Latvia
摘要:In this paper a family of model transformation languages L1, L2, and L3 following the language L0 is introduced. The first language L0, not being part of this paper, is very simple and serves as a base language. It is implemented through an efficient compiler to C++ [1]. Each of the next languages L1, L2, and L3 is an extension of the previous one, and they are implemented by the bootstrapping method based on the language L0, that is, three compilers are written in L0: from L1 to L0, from L2 to L1, and from L3 to L2. The language L1 contains powerful pattern definition facilities, L2 ¨C loops, and L3 ¨C the branching facility. The language L3 is considered to be both sufficiently easy-to-use to serve as an intermediate language in the implementation of higher-level transformation languages, and expressive enough to be used in real model transformation tasks. The presented paper is an extended version of sections 4 ¨C 6 of [10].