In this page we provide answers to common questions about Epsilon. If your question is not answered here, please feel free to ask in the forum.
To put it simply, with EMF you can specify metamodels and construct models that conform to these metamodels, while with Epsilon you can do stuff with these EMF models and metamodels (e.g. validate them, transform them, generate code from them etc.).
No. Epsilon is a component that facilitates the specification and tool-support of a range of task-specific model management languages, one of which targets model-to-model transformation (ETL).
While we can't possibly have a precise answer to this, with more than 700 posts in the Epsilon forum, it seems that quite a few people are currently using different bits of Epsilon. Some of them have also shared their experiences online.
We'd very much like to be able to provide an one-in-all bundle which you could download and use straight away. However, due to space limitations, it is not possible for every Eclipse project/component to provide such a bundle.
To get notified when a new version of Epsilon becomes available, please subscribe to Epsilon's RSS feed (you can subscribe using a dedicated RSS client or an email client such as Thunderbird).
You can also configure Eclipse to check for updates automatically by going to Window->Preferences->Install/Update/Automatic Updates and checking the "Automatically find new updates and notify me" option.
Yes. There are several examples of doing just that (for all languages provided by Epsilon) in this project in the SVN.
There are two main differences:
First, QVT, OCL and MTL are standards while languages in Epsilon are not. While having standards is arguably a good thing, by not having to conform to standardized specifications, Epsilon provides the agility to experiment with interesting new features and extensions to model management languages, and contribute small bits to advancing the level of understanding in the field. Examples of such interesting and novel features in Epsilon include interactive transformation, tight Java integration, extended properties, and support for transactions.
Second, Epsilon provides specialized languages for tasks that are currently not explicitly targeted by the OMG standards. Examples of such tasks include interactive in-place model transformation, model comparison, and model merging.
No. In Epsilon, precedence is given to researching and providing solutions for interesting and novel aspects of MDE - as opposed to implementing existing standards. By contrast, the OCL/M2M/M2T projects aim at providing tools that will fully implement the respective OMG standards.
If the available documentation doesn't provide enough information for figuring this out, please feel free to ask in the Epsilon forum.
There are several ways to contribute to Epsilon. In the first phase you can ask questions in the forum and help with maintaining the vibrant community around Epsilon. You may also want to let other developers know about Epsilon by sharing your experiences online. If you are interested in contributing code to Epsilon, you should start by submitting bug reports, feature requests - and hopefully patches that fix/implement them. This will demonstrate your commitment and long-term interest in the project - which is required by the Eclipse Foundation in order to later on be nominated for a committer account.