Thursday, March 19, 2009

TMF Xtext M6

The M6 builds are published and ready for download. We've prepared a distro containing everything you need and have written a short getting started tutorial which should give you a feel of how Xtext works. M6 Xtext is using MWE and Xpand, so oAW Xtext users should feel comfortable. Note that the M6 release is not intended to be used in production. We'll still change things and if you don't get support by one of the committers (see below), you might need to have good code archeologists on your site ;-). The production-ready release will be available in June (Galileo).

During M6 we've focused on a large number of things (see New and Noteworthy). For instance, TMF Xtext now generates EMF classes for the derived EPackages (using existing EPackages is of course supported as well). The generated EClasses make use of latest improvements in EMF, namely the MinimalEObject. This has reduced memory footprint by about 30% and at the same time made the runtime even faster.

Another noteworthy thing is the new composable code generator API. Xtext is now shipped with lots of so called generator fragments, each adding functionality for a certain aspect. For instance, the generation of EMF classes is implemented as such a fragment. You can choose from those provided fragments, configure them individually and even add your own fragments in order to have a generator, generating exactly what you need. A fragment can contribute, to Manifest.MF, plugin.xml and the Guice modules. Sebastian has written about it.

Looking at our project plan, one can see that M6 is also the API freeze milestone. Have a look at Heiko's post and the corresponding wiki page to see how we handle API contracts.

Jan and I will present TMF Xtext M6 at EclipseCon next week.


There are a couple of things we want to do in M7 (enum rules, lazy linking, etc.). In addition it's planned to put the EMF Index into a shape, where it can become a solid foundation for linking and navigation in Xtext. Jan will give a short talk about the EMF Index at EclipseCon.

We do consulting

Although mentioned, that M6 is not yet production-ready, we at itemis already help a couple of customers using TMF Xtext in industry projects. It's so important to use new technology to solve real problems and gather feedback which is based on real projects as soon as possible. Using TMF Xtext in many different projects gives us a pretty good feel for what's important and what is not. And so far the feedback from those projects is very positive.

It's also good to see that our business model actually works well (even in these times). This is especially important since doing open-source development which is only funded by doing consulting, is not that common at Eclipse.

So, don't forget that we provide professional support! This does not mean that we won't do regular unpaid support through the newsgroup. It's just that if you need things like prototypes, reliable response times, onsite trainings, etc. you can get it.