Prezi

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in the manual

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Acceleo at the Eclipse-OMG Workshop

Acceleo presentation for the Eclipse-OMG Workshop 2012 in Reston, Virginia
by Obeo Network on 23 October 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Acceleo at the Eclipse-OMG Workshop

ECLIPSE
OMG
2012
W
R
K
H
O
P
ACCELE
and you thought you knew template based code generators... ?
B
O
U
T
istory
t
s
d
s
r
a
f
e
t
u
r
e
a
Reston, Virginia
Me
Acceleo
MOFM2T
Stéphane Bégaudeau
Software engineer at Obeo
Leader of Acceleo
Open Source Code Generator
Generate any kind of text
From any kind of models
Built with the tools of your choice
OMG's standard for model to text transformation
MOFM2T
EMF
MTL
OCL
UML
Acceleo
Contacts:
@sbegaudeau
+stephane.begaudeau
www.eclipse.org/acceleo
2006 Birth of Acceleo
2008 MOFM2T v1.0
2009 Eclipse Foundation
2012 Acceleo 3.3
Model to Text transformation language...
parameterized by some metamodels...
manipulated with a superset of OCL
Templates
Queries
Modules
Eclipse MDT OCL
Tooling
Incremental
Dynamic Override
Traceability
Stand alone
Maven
Input models
deployed as plugins or not
Compatible with MDT UML models
Models built with the tools of your choice...
Non standard library
Standard library
Strict compilation mode
Python
Javascript
Profiling
Traceability
Compilation
OCL and MTL
EMF operations
->filter(OclType)
->reverse()
.trim()
OCL based expressions
Dynamic
Static
Extending modules
Overriding templates
Importing modules
Object Constraint Language implementation for EMF-based models
Eclipse 3.4 -> 4.2
EMF-based implementation
of the UML metamodel
For us, it's just models...
Interpreter
Wizards
Perspective
Editor
Views
Refactoring
Completion
Error detection
Debug
User Interface generation, profiling...
Generation
Change the behavior of an existing generator without changing it...
Use your generator out of Eclipse
Prototype-based approach
Generation Patterns
Before
After
Create a new generator
Override another module
Use the dynamic template extension point
Deploy
Find out where each model elements and each pieces of your generator are involved in the generation
Thank you for your Attention!
Acceleo tutorial tomorrow
Creating tools to simplify your application development: The Chrome App example
For more information on Acceleo
www.eclipse.org/acceleo
wiki.eclipse.org/Acceleo
github.com/eclipse/acceleo
n
d
invoke(...)
Blocks
for, if, let...
Templates
conditional execution
variable initialization
post condition
? (not var.oclIsUndefined())
{str: String= var.name;}
post(trim())
Templates
Quick replacement
Syntax highlighting
3.1 - Based on Tycho to build Eclipse plugins.
3.3 - Eclipse independant
implemented in Acceleo
See the full transcript