Eclectic is a transformation tool designed as a family of model transformation languages, that is, a set of transformation languages each one specifically designed to address a specific transformation concern.
In principle, the combination of these languages would permit covering many model transformation scenarios, in a more intentional way than using a general purpose transformation language, improving modularity and understandability.
In Eclectic every language is compiled to an intermediate representation, called IDC. It provides primitive instructions for model manipulation. Then, IDC is compiled to the Java Virtual Machine (JVM) bytecode format. In this way, all Eclectic languages share the same execution infrastructure. The composition mechanisms are implemented at the IDC level. There is also a runtime library, which provides datatypes (e.g., a naive implementation of immutable lists), a model manager (i.e., EMF and MetaDepth are supported), etc.
Although in this moment Eclectic is in general usable, it is still evolving, and the languages and the implementation are likely to change.
Download the packaged update site from one of the links at the left sidebar. Install with:
It may be needed to uncheck "Group items by category" if nothing appears in the plug-in list.
Help -> Install New Software -> Add... -> Archive ...
Create a new Java project, right-click on the project and select Add Eclectic Nature. Then, go to build path configuration, select Add Library and Eclectic. Now, you should be able to write .eclectic files and get them compiled automatically.
You can download the example projects to see how to configure and launch transformations.
Eclectic has been created by Jesús Sánchez Cuadrado. If you have any trouble installing or using it, you can contact
jesus dot sanchez dot cuadrado at uam dot es