Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » Epsilon » [EPL] Execution semantics(Guard executed after onmatch!)
[EPL] Execution semantics [message #1387059] Mon, 23 June 2014 19:41 Go to next message
abdush mohd is currently offline abdush mohdFriend
Messages: 35
Registered: April 2014
Member
Hi,

I have started using EPL to write some in-place modifications for an input model, which repeatedly change the model while there is a match for one of the pattern rules. I am facing a difficult time with one of the rules.

For one of the patterns, I am using 3 roles with guards and one with dynamic domain. After the onmatch part is executed I get an error saying that a property of an element (which has been deleted in the onmatch body) is not found. After debugging the program, it seems that after finishing the onmatch body, the execution goes back to the role part in one of the pattern roles. This tries to access a property of an already deleted element which gives the error. I don't know if this is a normal behavior or if I am doing something in a wrong way.

To my surprise, there are some other patterns with similar structure and behavior but they just work fine without errors!

Thanks in advance.
Abdu
Re: [EPL] Execution semantics [message #1387063 is a reply to message #1387059] Mon, 23 June 2014 20:38 Go to previous messageGo to next message
abdush mohd is currently offline abdush mohdFriend
Messages: 35
Registered: April 2014
Member
One more thing, from what I understood from the book, I thought that the onmatch body will be executed first for all the matching rules iteratively (until there is no more matching) , and then followed by the do body for those matched rules (in arbitrary order probably if I am not mistaken). However, from the println() output in the console i can see some onmatch/do have been executed after the rest.

I should also say that all the modification logic I have is in the onmatch part, although it is mentioned that the do part can be used to modify input models without the risk of concurrent errors, but when I had my modification logic in the do part I got such errors.

Thanks
Abdu
Re: [EPL] Execution semantics [message #1387071 is a reply to message #1387063] Mon, 23 June 2014 21:44 Go to previous messageGo to next message
Dimitris Kolovos is currently offline Dimitris KolovosFriend
Messages: 2163
Registered: July 2009
Location: York, UK
Senior Member

Hi Abdu,

Could you please put together a minimal example [1] we can use to reproduce this?

Cheers,
Dimitris

[1] https://www.eclipse.org/epsilon/doc/articles/minimal-examples/
Re: [EPL] Execution semantics [message #1387163 is a reply to message #1387071] Tue, 24 June 2014 14:28 Go to previous message
abdush mohd is currently offline abdush mohdFriend
Messages: 35
Registered: April 2014
Member
Thanks Dimitris, I have sent a minimal example for the first case.
I'm not sure if I can do the same for the last part because it uses a number of patterns.

Thanks.
Abdu
Previous Topic:[EOL] Call operation from inside an operation
Next Topic:[ETL] Modifying referenced model
Goto Forum:
  


Current Time: Thu Apr 25 11:47:10 GMT 2024

Powered by FUDForum. Page generated in 0.02959 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top