This page contains an index of articles presenting a range of tools and languages in Epsilon. Should you find that an article contains errors or is inconsistent with the current release of Epsilon, please let us know.

Epsilon Object Language

  • EOL syntax updates: This article summarizes the changes introduced in 0.8.7 and 0.8.8 in the EOL concrete syntax.
  • Extended Properties: This article demonstrates the extended properties mechanism in EOL (and by inheritance, in all languages in Epsilon).
  • Call Java from Epsilon: This article demonstrates how to create Java objects, access their properties and call their methods from Epsilon languages.
  • Call Java functional interfaces from Epsilon: This article demonstrates how to call native methods which take functions as their parameter, using lambdas and streams directly from Epsilon using EOL syntax.
  • Profiling Epsilon Programs: This article demonstrates how to profile Epsilon programs using the platform's built-in profiling tools.

Epsilon Validation Language

  • EVL-GMF Integration: This article demonstrates evaluating EVL constraints from within a GMF-based editor.

Epsilon Generation Language

Epsilon and EMF models

  • Emfatic language reference: Emfatic is a language designed to represent EMF Ecore models in a textual form. This article details the syntax of Emfatic and the mapping between Emfatic declarations and the corresponding Ecore constructs.
  • Reflective EMF tutorial: This tutorial demonstrates how to create an EMF Ecore metamodel and a sample model that conforms to it reflectively (i.e. without generating any code).
  • Epsilon and EMF: Frequently-asked questions related to querying and modifying EMF-based models with Epsilon.
  • The EMF EPackage Registry View: This article demonstrates the EPackage Registry view which allows developers to inspect the contents of the registered EMF EPackages.
  • Exeed annotation reference: This article lists the annotations you can use on your metamodels to customize the look of the Exeed model editor.
  • Inspecting EMF models with Exeed: This article demonstrates how you can use Exeed to inspect the structure of your EMF models.
  • Working with custom EMF resources: This article demonstrates how you can work with custom EMF resources in Epsilon.
  • Parsing XML documents as EMF models with Flexmi: This article demonstrates how you can use Flexmi to parse XML documents in a fuzzy manner as instances of Ecore metamodels.
  • Modularity Mechanisms in Flexmi: This article demonstrates how you can break down Flexmi models over multiple files and use templates to capture complex reusable structures in your models.

Epsilon and non-EMF models



Human-Usable Textual Notation


Teaching Material

  • MDE Exercises: This article provides a number of exercises which enable you to test your knowledge on MDE, EMF and Epsilon.

Technical Support

  • Constructing a helpful minimal example: From time to time, you may run into a problem when using Epsilon or find a bug. This article describes how to construct a minimal example that we can use to reproduce the problem on our machine.

Extending Epsilon

Epsilon Developers