The ATL Toolkit is now compatible with Eclipse Helios (Eclipse 3.6, EMF 2.6).

+

The ATL Toolkit is now compatible with Eclipse Helios (Eclipse 3.6, EMF 2.6). ATL is still compatible with Eclipse 3.5, 3.4, 3.3 and 3.2.

−

TODO

+

==ATL Editor improvements==

==ATL Editor improvements==

−

*Hover informations

+

*'''Hover informations''': when hovering code parts into an atl file, a yellow popup displays informations about the element type if available.

−

TODO

+

−

[[Image:atl_hover.png]]

+

−

*Open declaration (both available with F3 and Ctrl-click)

+

[[Image:ATL_hover.png]]

−

TODO

+

−

[[Image:atl_open_declaration.png]]

+

−

*Content assist

−

TODO

−

[[Image:atl_advanced_content_assist2.png]]

−

*Occurences highlighting

+

*'''Open declaration''' (both available with F3 and Ctrl-click): this feature eases the navigation inside of an ATL file, by opening the corresponding declaration of the selected element. When selecting a ModelElement the action opens the metamodel (.ecore file) and highlights the selected element.

−

TODO

+

−

==ATL Language==

+

[[Image:ATL_open_declaration.png]]

−

===''pcall''===

+

−

TODO

+

*'''Content assist''': now content assist is more powerful and works inside of complex OCL expressions

+

+

[[Image:ATL_advanced_content_assist2.png]]

+

+

+

*'''Occurences highlighting''': when selecting an element, all references to the same one are highlighted.

+

+

[[Image:ATL_show_references.png]]

+

+

==ATL Language==

===Output Model selection===

===Output Model selection===

Line 30:

Line 30:

A miss in the ATL syntax has just been corrected: the '''in''' keyword is now available for both input and output patterns. It mainly allow to specify in which model you want to create elements, when the old semantics forbade the use of several output models conforming to the same metamodel declaration. The workaround wasn't very intuitive as it consists on declaring the same metamodel with different names...

A miss in the ATL syntax has just been corrected: the '''in''' keyword is now available for both input and output patterns. It mainly allow to specify in which model you want to create elements, when the old semantics forbade the use of several output models conforming to the same metamodel declaration. The workaround wasn't very intuitive as it consists on declaring the same metamodel with different names...

−

The use of this keyword is described at the end of [[ATL/User_Guide_-_The_ATL_Language#Simple_target_pattern_element|this]] section.

+

Here is a sample transformation header:

+

+

create OUT1 : MM_B, OUT2 : MM_B from ... ;

+

+

Below is an output pattern which creates elements in the OUT2 model:

+

+

to

+

o : MM_B!Class2 in OUT2

==Debugging & Profiling==

==Debugging & Profiling==

===debugger refactoring===

===debugger refactoring===

−

TODO

+

Until ATL 3.0, the debugger was part of the Regular ATL VM only. EMF-specific VM didn't provide debugging facilities. Now the debugger (UI plus debugging protocol, ADWP) has been extracted from the Regular VM and refactored to be more generic. Finally a debugging protocol support has been added to the EMF-specific VM.

+

So now the debugger can work with both VMs.

+

+

The debugger also had some small enhancements, like variables presentation, breakpoints available in the ATL editor.

===profiler===

===profiler===

−

TODO

+

The profiler contribution has finally been integrated. It provides a profiler available for both VMs, usable through the launch configuration "Advanced" tab, in the VM selection. The profiling of an ATL transformation is very helpful to find the performance issues inside of a transformation, by displaying various informations about the execution in the dedicated views.

+

+

[[Image:ATL_profiler.png]]

==ATL Plugins==

==ATL Plugins==

Line 44:

Line 56:

The ATL plugin wizard is a new feature which helps achieving an ATL programmatic launch. This utility first will ask for transformation parameters (metamodels, libraries paths, transformation modules paths):

The ATL plugin wizard is a new feature which helps achieving an ATL programmatic launch. This utility first will ask for transformation parameters (metamodels, libraries paths, transformation modules paths):

Finally you will be able to launch the transformation using the generated main, or integrating the launcher class into an existing application. To use the transformation as a standalone app, you can use Eclipse PDE export options:

+

[[Image:ATL_plugin_wizard_result.png]]

+

+

+

Finally you will be able to launch the transformation using the generated main, or integrating the launcher class into an existing application. To use the transformation as a standalone app, you can use Eclipse Java export options:

+

+

+

[[Image:ATL_plugin_wizard_result_export.png]]

−

[[Image:atl_plugin_wizard_result_export.png]]

This will product a .jar containing all the required ATL, Eclipse and EMF libraries.

This will product a .jar containing all the required ATL, Eclipse and EMF libraries.

Latest revision as of 09:10, 9 June 2010

Contents

Helios Release

The ATL Toolkit is now compatible with Eclipse Helios (Eclipse 3.6, EMF 2.6). ATL is still compatible with Eclipse 3.5, 3.4, 3.3 and 3.2.

ATL Editor improvements

Hover informations: when hovering code parts into an atl file, a yellow popup displays informations about the element type if available.

Open declaration (both available with F3 and Ctrl-click): this feature eases the navigation inside of an ATL file, by opening the corresponding declaration of the selected element. When selecting a ModelElement the action opens the metamodel (.ecore file) and highlights the selected element.

Content assist: now content assist is more powerful and works inside of complex OCL expressions

Occurences highlighting: when selecting an element, all references to the same one are highlighted.

ATL Language

Output Model selection

A miss in the ATL syntax has just been corrected: the in keyword is now available for both input and output patterns. It mainly allow to specify in which model you want to create elements, when the old semantics forbade the use of several output models conforming to the same metamodel declaration. The workaround wasn't very intuitive as it consists on declaring the same metamodel with different names...

Here is a sample transformation header:

create OUT1 : MM_B, OUT2 : MM_B from ... ;

Below is an output pattern which creates elements in the OUT2 model:

to
o : MM_B!Class2 in OUT2

Debugging & Profiling

debugger refactoring

Until ATL 3.0, the debugger was part of the Regular ATL VM only. EMF-specific VM didn't provide debugging facilities. Now the debugger (UI plus debugging protocol, ADWP) has been extracted from the Regular VM and refactored to be more generic. Finally a debugging protocol support has been added to the EMF-specific VM.
So now the debugger can work with both VMs.

The debugger also had some small enhancements, like variables presentation, breakpoints available in the ATL editor.

profiler

The profiler contribution has finally been integrated. It provides a profiler available for both VMs, usable through the launch configuration "Advanced" tab, in the VM selection. The profiling of an ATL transformation is very helpful to find the performance issues inside of a transformation, by displaying various informations about the execution in the dedicated views.

ATL Plugins

The ATL plugin wizard is a new feature which helps achieving an ATL programmatic launch. This utility first will ask for transformation parameters (metamodels, libraries paths, transformation modules paths):

Then a new plug-in will be generated, embedding:

the transformation modules and libraries

a propery file containing URIs, atl file paths

a Java class which allow to programmatically launch the ATL transformation

Finally you will be able to launch the transformation using the generated main, or integrating the launcher class into an existing application. To use the transformation as a standalone app, you can use Eclipse Java export options:

This will product a .jar containing all the required ATL, Eclipse and EMF libraries.