[ATL] Compatibility between ATL2 and ATL3? [message #104510] |
Tue, 05 May 2009 04:12  |
Eclipse User |
|
|
|
Hi there,
in our work for the JWT project we developed several model transformations
from different representations of workflows and business processes. Most
of these transformations have been created with ATL2. Now we tested our
code on Galileo M7 and thereby downloaded the latest ATL3 and have seen
that the API has substantially changed and that most of the code we have
written to execute our ATL-transformations from Java code does not work
anymore.
- Is there a document that describes the changes that need to be done to
make the code work with ATL3 again?
- Why are some methods that were public API before simply removed without
making them deprecated before (PDE tooling?)
- What is your recommendation for other projects that want to give their
users the choice either to download Ganymede (with old EMF and ATL) as
well as Galileo (with new version of EMF and ATL)? Shall we now host two
different versions of the code or are there some classes/methods that work
on both versions?
Thanks in advance for your assistance and best regards,
Florian
-JWT project co-lead-
|
|
|
Re: [ATL] Compatibility between ATL2 and ATL3? [message #104584 is a reply to message #104510] |
Wed, 06 May 2009 04:08  |
Eclipse User |
|
|
|
Hello,
Answers below:
Florian Lautenbacher a écrit :
> Hi there,
>
> in our work for the JWT project we developed several model
> transformations from different representations of workflows and business
> processes. Most of these transformations have been created with ATL2.
> Now we tested our code on Galileo M7 and thereby downloaded the latest
> ATL3 and have seen that the API has substantially changed and that most
> of the code we have written to execute our ATL-transformations from Java
> code does not work anymore.
>
> - Is there a document that describes the changes that need to be done to
> make the code work with ATL3 again?
At this time there isn't... wiki only contains entry about ATL2.0
programmatic launch.
We plan to do the same about 3.0, and we will try to explain changes
between APIs.
> - Why are some methods that were public API before simply removed
> without making them deprecated before (PDE tooling?)
Old ATL API was strongly linked to the ATL RegularVM. In ATL 3.0 we
introduced a first version of the EMFVM, which fixes a lot of problems -
especially performance issues.
As the old VM was used all over the ATL plugins (editor, debugger,
compiler etc) we did a lot of work to make the architecture more flexible.
This refactoring broke things into the old-API (mainly Regular-VM
things), which is now quite encapsulated into the new one. Those strong
changes made us pass to version 3.0.0 instead of 2.1.0.
> - What is your recommendation for other projects that want to give their
> users the choice either to download Ganymede (with old EMF and ATL) as
> well as Galileo (with new version of EMF and ATL)? Shall we now host two
> different versions of the code or are there some classes/methods that
> work on both versions?
>
Note that ATL 2 or 3 are both compatible with eclipse 3.5, 3.4, 3.3. So
you can purpose Ganymede with ATL 2 or 3, or Galileo with ATL 2 or 3 as
well.
Best regards,
William
> Thanks in advance for your assistance and best regards,
>
> Florian
>
> -JWT project co-lead-
>
|
|
|
Powered by
FUDForum. Page generated in 0.03445 seconds