09 Eef Powered By Acceleo Mtl Acceleo Mtl ... And Punishment! Obeo
Transcript of 09 Eef Powered By Acceleo Mtl Acceleo Mtl ... And Punishment! Obeo
MTL
Goulwen Le Fur - [email protected]
EEF powered by Acceleo
Obeo
Eclipse Acceleo ... and punishment !
France
The need
First project : Acceleo.org on Ecore
Second project (papyrus part I) : Acceleo.org on DSL
Iteration of the first project : Eclipse Acceleo on
DSL
EEF
Update of papyrus : EEF
History
What is EEF ?
What is EEF ?
EEF Runtime
What is EEF ?
EEF Metamodels
EEF Metamodels
EEF Metamodels
What is EEF ?
EEF Editing Environment
What is EEF ?
EEF Generators
EEF Generators
Some results
EEF Acceleo module
EEF generates code with an Acceleo module
Currently 25 templates16 create files
9 provide generic services
Organized in 6 packagesLike in Acceleo.org
EEF Acceleo module
The EEF module also contains an initializerCreates default EEF
models from a given metamodel
Initializers can be added by extension points
Acceleo : a standard
At the first steps EEF was based on Acceleo.orgQuickly done (but poor in features at this time)
Some bugs due to the use of Ecore and GenModelBut creation very easy (stability !)
Module not packaged at this time
For the second version we had the new Acceleo with a standard syntax (MTL)And we wanted to become and Eclipse Project
So we decided to switch on the new version
The light side of the Standard
Syntax more precise in some caseEnd of blocks ([/template], )
Distinction template/query/...
Syntax more powerful in some caseGenerating 1 file for a couple of Eobjects
Guards
Template extension
I have never been lost, but I will admit to being confused for several weeks (Daniel Boone)
EEF was the first real Acceleo moduleWith many trap for code
generation
Many surprises for the first usersProblems in the engine
Problems in the parsers
Problems with indentation
Fortunately the Acceleo Team was very efficient to help us to fix this problems
The A-cceleo Team
Thanks ! All is fixed !
Promotional picture of the cast of The A-Team. Retrieved from NBC.com: Vintage Shows - The A-Team on February 19, 2009
The dark side of the standard
Navigation in OCLWhat a complexity !
No java servicesEverything to be describe in OCL
Cf the first point
Management of the string less powerful than in Acceleo.orgUnicode
...
Thanks again to the Acceleo Team
Non-standard library
Use of OCL 1.3
Use of tricksTemplate encoding for example
And the Acceleo Team works to
simplify as much as possible the
OCL standard and the use of Acceleo
No pain ...
no gain
Now EEF is an eclipse project
We have more and more userPole Emploi (former Unedic)
Thales
Papyrus
And we have so many ideas to make an even better use of AcceleoAnd improve EEF by this way ...
Thanks for your attention, any question ?
Further information :http://www.obeo.fr
http://www.eclipse.org/proposals/eef
Copyright 2009 Obeo.; made available under the EPL v1.0 | July 10, 2009
Eclipse Acceleo ... and punishment !
EEF powered by Eclipse Acceleo