Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [viatra-dev] Transformation API

Hi!

My suggestions are the following:

1. (Batch) Transformation Statements 

- The name of "forall" does not reflect its most important property. We should find an alternative name. How about "forAllCurrent"?
- As a very common use case, there should be a primitive equivalent of ALAP execution, since "until(alwaysFalse)" is awkward to read and difficult to come up with. How about "repeatedly" or even "whilePossible"?

As an alternative, we should consider verb-like statements for firing activities, such as "fireOne" (instead of "choose"), "fireAllCurrent" (instead of "forAllCurrent" or "forall"), "fireWhilePossible" (instead of "until(alwaysFalse)" or "repeatedly"), "fireUntil" (instead of "until").

2. Model Manipulation Primitives 

(First, a minor point: the wiki calls the EObject a "container" even in cases where it does not have to be, or even explicitly stated not to be a container. Probably a copy/paste bug, OR some serious misunderstanding on my part.)

I suggest that we should create convenience methods that complement the current createChild, addTo, move and remove manipulators with a simplified version in case of multi-valued references: instead of the now owner EObject and the EReference, we could take a single EList as input. We can make sure with generic arguments that the list type is correct, and a single run-time instanceof check can verify whether the list is a containment list.

Cheers,
Gábor


-----viatra-dev-bounces@xxxxxxxxxxx wrote: -----
To: Viatra developer discussions project <viatra-dev@xxxxxxxxxxx>
From: Ujhelyi Zoltán
Sent by: viatra-dev-bounces@xxxxxxxxxxx
Date: 09/20/2013 05:06PM
Subject: [viatra-dev] Transformation API

Hi,

as promised, I have set up a wiki page that describes the current transformation API implementation: http://wiki.eclipse.org/VIATRA2/EMF/Transformation_API

The implementation is in an early stage, everything is open to discussion; the page contains links to both the transformation API implementation and the TTC2013 example code.

Cheers,
Zoltán
-- Zoltán Ujhelyi
https://www.inf.mit.bme.hu/en/members/ujhelyiz

Fault Tolerant Systems Research Group
Budapest University of Technology and Economics

_______________________________________________
viatra-dev mailing list
viatra-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/viatra-dev

Back to the top