Over the years, we have extracted commonalities from our various EMF-based tools into a plugin that provides a thin layer of extra goodies over EMF. This layer, which we constantly extend, currently provides:
You can install and use eMoflon::Core either directly for (meta)modelling with EMF, or as a basis for developing your own modelling tools.
To get started we recommend working through our eMoflon::Core handbook.
If you have any problems or questions use our eMoflon::Core issue tracker.
eMoflon::Core is open source (dually licensed under GPL 3.0 and EPL 1.0) and is available on GitHub.
eMoflon::IBeX is an incremental interpreter for graph patterns and graph transformation rules (for unidirectional model transformation), and for Triple Graph Grammars (TGGs) for bidirectional model transformation.
eMoflon::IBeX uses an incremental graph pattern matcher meaning that it can be used for reactive programming and trades memory for almost constant response time to model changes. Due to recent improvements to our incremental graph pattern matching tools, eMoflon::IBeX became just as scalable as eMoflon::TIE was. Additionally, eMoflon::IBeX it is very flexible, and already offers many more model management operations than has ever been possible in the same tool.
Some of the tasks we already support and can automatically derive from a single TGG include: model generation, consistency checking, link creation, incremental model synchronisation, and soon much more. Making eMoflon::IBeX even more efficient is a current research challenge and an ongoing effort.
If you have any problems or questions use our eMoflon::IBeX issue tracker.
eMoflon::IBeX is open source (dually licensed under GPL 3.0 and EPL 1.0) and its source code is available on GitHub.
Note: The eMoflon::TIE-GT tool has been discontinued recently and will receive no further updates or support.
eMoflon::TIE-GT was a code generator that produced fully EMF-compliant Java code from Ecore meta-models. Compared to other EMF code generators, you could even specify the implementation of methods (i.e., EOperations) using eMoflon::TIE-GT. The MOSL (Moflon specificiation language) control flow language provided constructs such as conditions (if-then, if-then-else), loops (while-do, do-while, foreach), pattern invocations, and operation invocations.
If you are interested, we recommend working through this handbook, which introduces eMoflon::TIE-GT based on the famous Sokoban board game.
More experienced users can proceed directly to the quick-setup instructions.
Over the years, eMoflon has been applied in diverse application scenarios and domains. In the following, we provide a collection of virtual machines, screen casts, links to lectures and projects using eMoflon, and relevant publications. If you are using or have used eMoflon in a project, publication, lecture, or similar, please contact us as we would love to mention your application scenario.
eMoflon is developed jointly at the Real-Time Systems Lab, TU Darmstadt (TUDA) and the Database and Information Systems Group, Paderborn University (UPB).
eMoflon ist ein Forschungsprojekt der
Telefon: +49 6151 16-22350
Telefax: +49 6151 16-22352
Für das Fachgebiet Echtzeitsysteme gilt das Impressum der TU Darmstadt Vertretungsberechtigter des FG Echtzeitsysteme ist Prof. Dr. rer. nat. Andy Schürr.