Friday, April 30, 2010

With Acceleo 3.0 included in Eclipse 3.6, our goal is to provide the de facto or reference implementation of the MTL code generation standard. Yet some parts of the specification are still quite vague and ambiguous and collaboration with OMG isn't smooth ... We follow as much as possible the standard but sometimes we need to introduce some deflections with the specification because we would like to keep the exemplary pragmatism of the Acceleo.org 2.x version.

For instance, we sometimes need to wrap Java services. It is useful to invoke some java code from inside an Acceleo template. The acceleo non-standard library provides a service "invoke" which allows just that. The invoked java service is wrapped in an Acceleo query. Such a service isn't defined in the specification but it is necessary in an Eclipse pragmatic implementation. For this reason, we decided to define 2 compilation modes in the Acceleo Compiler properties page. The default value is "false" for the "Strict MTL compliance" property. "unchecked" means that we allow to use the pragmatic non-standard library. When you check this value, some syntax errors could appear on your MTL files (each time you use the non-standard library) but the code generation execution still works...

Saturday, April 3, 2010

Acceleo 3.0 is coming soon, with the Eclipse Helios train... Acceleo 3.0 already sports awesome stability and a level of functionality close to if not equal to its 2.x stream. We have planned several corrective versions in the next few years for the 2.x branch, the 2.7 version is out now! An official announcement will be done next week... Several improvements and bug fixes have been done for this release. You may want to have a look on the new and noteworthy page for the 2.7.0 release. We also plan to release a 2.7.1 version this year and a 2.8 version next year.

Do not hesitate to give feedback through the mailling-lists, the bug-tracker or the web forum... Note that Acceleo 3.0 users should use the Eclipse M2T newsgroup! (you have to put the tag [Acceleo] in the message subject)