Model Abstrction [message #1735181] |
Thu, 16 June 2016 03:29  |
Eclipse User |
|
|
|
Hi!
I am actually developing a model to model transformation with xtend. My problem is that both the input and the output models are not stable, they are still in definition and still growing. So for each release or change of theses models I have to change my code.
Do QVTo propose some abstraction mechanism, or some other way to solve stability problems? Or do you know some other Eclipse Project or java Technology which may help me? =)
Thanks a lot!
|
|
|
|
Re: Model Abstrction [message #1735259 is a reply to message #1735255] |
Thu, 16 June 2016 12:18   |
Eclipse User |
|
|
|
Hi
For my own code in the OCL / QVTd project I have many Java-coded
transformations. These exploit auto-generated Visitor hierarchies (much
faster than Ecore's switches). During development, I stub the default
visit with a System.out.println to log what needs writing. Eventually
the stub evolves to an UnsupportedOperationException.
Xtend may have declarative capabilities to do this automatically, but I
am afraid that I find many of Xtend's capabilities too clever by half
and inadequately supported by the tooling so I don't use them.
The auto-generators for the Visitor hierarchies use an Xtend
model-to-text layer on top of a Java foundation.
See
GIT\org.eclipse.ocl\examples\org.eclipse.ocl.examples.build\src\org\eclipse\ocl\examples\build\xtend\GenerateVisitorsXtend.xtend
Regards
Ed Willink
On 16/06/2016 17:05, Ed Willink wrote:
> Hi
>
> What you are asking is rather hard. Suppose you just change "name" to
> "identifier" how telepathic do you expect tooling to be? I find JDT
> about right. Lots of red squiggles, allowing manual refactoring. QVTo
> is moderately good at the red squiggles, but like almost all modeling
> tools useless wrt refactoring.
>
> I find Xtend's model/Java language schizophrenia unhelpful and
> possibly a contribution to its poor tooling; the Java quality that one
> might expect seems to be degraded to the modeling tool par.
>
> ATL is potentially metamodel independent, but IMHO this just deprives
> the user of sensible static checking. You might find its laxity
> accommodates some of your evolution.
>
> QVTo has a strict/not-strict option that may allow a little laxity in
> your evolution.
>
> One day, a more plausible solution may review the metamodel changes
> and help you define simple 1:1 refactorings and characterize the
> semantics of non-1:1 changes interactively. This should autogenerate a
> meta-transformation that can be applied to models and/or
> transformations to perform the evolution.
>
> Regards
>
> Ed Willink
>
>
>
>
> On 16/06/2016 16:25, Laurence Robert wrote:
>> Hi!
>>
>> I am actually developing a model to model transformation with xtend.
>> My problem is that both the input and the output models are not
>> stable, they are still in definition and still growing. So for each
>> release or change of theses models I have to change my code. Do QVTo
>> propose some abstraction mechanism, or some other way to solve
>> stability problems? Or do you know some other Eclipse Project or java
>> Technology which may help me? =)
>>
>> Thanks a lot!
>>
>
|
|
|
|
Powered by
FUDForum. Page generated in 0.05770 seconds