Re: wrong meta model definition

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: wrong meta model definition

Tudor Girba-2
Thanks for reporting this.

Indeed, we have to make the meta-model rules work again. I will see if I can refresh them in the context of the OnMoose report (this is in the Arki project).

Cheers,
Doru


On 26 Apr 2011, at 13:38, Fabrizio Perin wrote:

> Hi Doru,
> I was looking with Raffael to the definition of the meta model i we might find an inconsistency:
>
> You define:
>
> FAMIXGlobalVariable>>>parentModule
> <MSEProperty: #parentModule type: #FAMIXModule opposite: #globalVariables>
> <MSEComment: 'Module (typically a file) defining the global variable.'>
> ^ self privateState
> attributeAt: #parentModule
> ifAbsentPut: [ nil ]
>
> But the opposite globalVariable is not define in FAMIXModule but into FAMIXScopingEntity. So either the pragmas in FAMIXGlobalVariable>>>parentModule became like this:
> <MSEProperty: #parentModule type: #FAMIXScopingEntity opposite: #globalVariables>
> <MSEComment: 'Module (typically a file) defining the global variable.'>
>
> (In this case the property should be called parentScope not parentModule)
>
> or you move to FAMIXModule
>
> FAMIXScopingEntity>>>globalVariables
> <MSEProperty: #globalVariables type: #FAMIXGlobalVariable opposite: #parentScope> <multivalued> <derived>
> <MSEComment: 'Global variables defined in the scope, if any.'>
>
> I would go for the first.
>
> Thanks,
>
> Fabrizio and Raffael

--
www.tudorgirba.com

"Problem solving should be focused on describing
the problem in a way that makes the solution obvious."





_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: wrong meta model definition

Tudor Girba
Hi,

I made the meta-model detections work again. It was a simple rename.

Now, about the parentModule problem.

There is indeed a mistake, but the mistake is in the opposite defined in FAMIXGlobalVariable>>parentModule. It should not be globalVariables, because those are kept for defining the relationship between at the level of the language. In other words, belongsTo depends on parentScope.

In the case of parentModule, it has a different meaning that is more related to packaging. So:
- we introduce new variables in FAMIXModule for packaged, or
- we make FAMIXModule a subclass of FAMIXPackage and make parentModule and alias for  parentPackage, or
- we remove FAMIXModule completely and rely on FAMIXPackage only.

Alex, are you using FAMIXModule in CAnalyzer?

Cheers,
Doru


On 27 Apr 2011, at 02:21, Tudor Girba wrote:

> Thanks for reporting this.
>
> Indeed, we have to make the meta-model rules work again. I will see if I can refresh them in the context of the OnMoose report (this is in the Arki project).
>
> Cheers,
> Doru
>
>
> On 26 Apr 2011, at 13:38, Fabrizio Perin wrote:
>
>> Hi Doru,
>> I was looking with Raffael to the definition of the meta model i we might find an inconsistency:
>>
>> You define:
>>
>> FAMIXGlobalVariable>>>parentModule
>> <MSEProperty: #parentModule type: #FAMIXModule opposite: #globalVariables>
>> <MSEComment: 'Module (typically a file) defining the global variable.'>
>> ^ self privateState
>> attributeAt: #parentModule
>> ifAbsentPut: [ nil ]
>>
>> But the opposite globalVariable is not define in FAMIXModule but into FAMIXScopingEntity. So either the pragmas in FAMIXGlobalVariable>>>parentModule became like this:
>> <MSEProperty: #parentModule type: #FAMIXScopingEntity opposite: #globalVariables>
>> <MSEComment: 'Module (typically a file) defining the global variable.'>
>>
>> (In this case the property should be called parentScope not parentModule)
>>
>> or you move to FAMIXModule
>>
>> FAMIXScopingEntity>>>globalVariables
>> <MSEProperty: #globalVariables type: #FAMIXGlobalVariable opposite: #parentScope> <multivalued> <derived>
>> <MSEComment: 'Global variables defined in the scope, if any.'>
>>
>> I would go for the first.
>>
>> Thanks,
>>
>> Fabrizio and Raffael
>
> --
> www.tudorgirba.com
>
> "Problem solving should be focused on describing
> the problem in a way that makes the solution obvious."
>
>
>
>
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev

--
www.tudorgirba.com

"Every successful trip needs a suitable vehicle."





_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev