Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » MoDisco » I'm looking for a M2M transformation tool for Modisco's Java Model(I'm looking for a tool that makes transformations easier...)
I'm looking for a M2M transformation tool for Modisco's Java Model [message #682176] Fri, 10 June 2011 10:58 Go to next message
Thanasis Naskos is currently offline Thanasis Naskos
Messages: 22
Registered: March 2011
Junior Member
Hi,

I'd like to ask you if is there any M2M transformation tool which is specialized in Modisco's Java Model transformations?

I'm using ATL to make transformations in Java Models parsed with JavaDiscoverer...
Those transformations concern adding new Classes, Interfaces, Packages, new Java code in existing methods or changing modifiers and stuff like that...

From what I've understood, ATL is not the greatest choice for this purpose... (ex 1500 lines of ATL code, needed to just copy a Java Model and this is not the only example!)...

I've also checked ETL (Epsilon Transformation Language) with no improvement in code lines!

The problem is not in those two transformation tools neither in Modisco's Java Model... Modisco's Java Model is very analytic (and this is very good) and those two tools provide general purpose transformations (and this is also good), but putting those two work together mess things up!!!

What I'm looking for, is a tool that is specialized in transforming (or refactoring) Modisco's Java Model...
If there isn't any implemented tool or any specification document for a new tool and a new DSL, I can work on it! Smile

Thank you for your interest!

[Updated on: Sat, 11 June 2011 04:36]

Report message to a moderator

Re: I'm looking for a M2M transformation tool for Modisco's Java Model [message #683708 is a reply to message #682176] Tue, 14 June 2011 05:31 Go to previous messageGo to next message
Hugo Bruneliere is currently offline Hugo Bruneliere
Messages: 588
Registered: July 2009
Senior Member
Hi,

You're right saying that we don't provide until now any specific Java model transformation feature.
However, instead of considering creating a brand new DSL for this, what could be more easily done and also interesting to do would be to define libraries of commonly used operations on Java models.
In ATL for instance, you can relatively quickly define libraries of helpers that could implement these "standard" operations based on the MoDisco Java metamodel.
These libraries could be then provided along with the Java metamodel and thus reused for facilitating the writing of new ATL transformations from/to this Java metamodel.
Such a contribution would be very relevant to integrate as part of next MoDisco release (i.e. after Indigo) in order to upgrade the current Java-related features.

What do you think about this idea?

Best regards,

Hugo


------------------------------------------
Hugo Bruneliere - R&D Engineer
AtlanMod research team (Inria, EMN & LINA)
Ecole des Mines de Nantes
Nantes - France
------------------------------------------
Re: I'm looking for a M2M transformation tool for Modisco's Java Model [message #684071 is a reply to message #682176] Tue, 14 June 2011 20:22 Go to previous messageGo to next message
Thanasis Naskos is currently offline Thanasis Naskos
Messages: 22
Registered: March 2011
Junior Member
Hi Hugo,

You've got a point but, working on such transformations (using ATL) made me looking for an other tool...
I'd say that it's not "relatively quick" it's "absolutely slow" trying to implement even simple transformations using ATL, on Modisco's Java Model.

I'm not saying that I'm an ATL's-guru, I'm using ATL 6 months now, but I don't think that I'm doing something wrong that makes everything seem so difficult.

Just consider that copying a Java Model to an other Java Model, takes about 1500 ATL code lines (just copy, without transformations). Yes I found a library to do my job, that produces this code automatically, but what I want and I believe you want it too, is producing easy to understand and sort code for such a simple operation...

I believe that Modisco's Java Model deserves a special and unique transformation tool...

See how many users have read this post so far.. Everybody is looking for something easier to use!

What do you think...Smile?

Thank you for your interest!!
Regards
Thanasis

Re: I'm looking for a M2M transformation tool for Modisco's Java Model [message #684200 is a reply to message #684071] Wed, 15 June 2011 04:09 Go to previous messageGo to next message
Hugo Bruneliere is currently offline Hugo Bruneliere
Messages: 588
Registered: July 2009
Senior Member
Hi Thanasis,

I really understand your point. And we are open to any relevant contribution in this area.

I was just mentioning the fact of creating libraries of standard base operations (dedicated to the Java metamodel) that could be directly reused as is in several transformations, not libraries of transformations themselves.
Of course, if the mapping to be performed is complex (and the concerned metamodels too, like the Java one), it will be very difficult (even impossible?) anyway to totally hide this complexity, and this independently from the used transformation technology.
My idea was just to propose a set of common predefined helpers in order to facilitate the building of such mappings and limit the amount of code to be duplicated in several transformations.

Concerning the copy of a Java model, have you already tried to use the ATL Refining Mode?
It is documented from http://wiki.eclipse.org/ATL/User_Guide_-_The_ATL_Language#ATL_Refining_Mode and you can find several entries on this special mode in the M2M forum.

Anyway, elaborating on a specific transformation language is still another possible alternative.
For this, the ATL infrastructure (i.e. the ACG language and ATL Virtual Machine) offers capabilities to define and then execute Domain-Specific Transformation Languages: http://wiki.eclipse.org/ACG .
For all technical questions specific to the use of ATL or its infrastructure, I would recommend you to use the M2M forum (and put the [ATL] tag in the subject of the posts).

However, in the context of MoDisco, we would be very interested in following what you're doing around our Java metamodel Smile

Best regards,

Hugo


------------------------------------------
Hugo Bruneliere - R&D Engineer
AtlanMod research team (Inria, EMN & LINA)
Ecole des Mines de Nantes
Nantes - France
------------------------------------------
Re: I'm looking for a M2M transformation tool for Modisco's Java Model [message #684228 is a reply to message #684200] Wed, 15 June 2011 05:05 Go to previous message
Thanasis Naskos is currently offline Thanasis Naskos
Messages: 22
Registered: March 2011
Junior Member
Hi Hugo,

In ATL Refining Mode you can't use "lazy rules" or delete for ex an Interface and generally in ATL is not easy enough to add a new component or delete an existing (I think delete is impossible). I'm not using refining mode to copy the model because I don't want just to copy it, I want to make some transformations in some components and copy all the other components as they are. The way to do something like that is kind of straight forward, you implement a module that copies the Model and add it as superimposed to the module with the transformation...

These days I'm looking for everything can be used to make a new DSL, thanks for your help in ACG, I'll take a look on it...

I think ETL http://www.eclipse.org/gmt/epsilon/doc/etl/ is closer to my needs.. I'm not sure but I think that it lets you build your own DSL on top of their base DSL "EOL"...

I'm glad to hear that you are interested!!! Any help finding useful tools to reuse or suggesting functions the new DSL to implement or proposing a preferred syntax or even guiding would be appreciated!!!

Regards
Thanasis
Previous Topic:Structured Metrics Model (SMM)
Next Topic:Reuse Modisco's genmodel
Goto Forum:
  


Current Time: Fri Apr 18 11:51:02 EDT 2014

Powered by FUDForum. Page generated in 0.02211 seconds