Famix entities packaging

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

Famix entities packaging

Blondeau Vincent

Hello,

 

In the context of Moose re-architecting, FAMIXCore package should contain only FAMIXCore classes, i.e., only classes common to all languages.

We detected some misplaced classes:

- FAMIXTypeAlias should belong to the C package like FAMIXModule which is already in.

- FAMIXAnnotation*should belong to the Java package.

 

Do you think that these classes have to stay in the core package? Or can we move them?

 

BTW, we also added an opposite to the FAMIXException>> exceptionClass in FAMIXClass.

 

Cheers,

Anne & Vincent

 


!!!*************************************************************************************
"Ce message et les pièces jointes sont confidentiels et réservés à l'usage exclusif de ses destinataires. Il peut également être protégé par le secret professionnel. Si vous recevez ce message par erreur, merci d'en avertir immédiatement l'expéditeur et de le détruire. L'intégrité du message ne pouvant être assurée sur Internet, la responsabilité de Worldline ne pourra être recherchée quant au contenu de ce message. Bien que les meilleurs efforts soient faits pour maintenir cette transmission exempte de tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa responsabilité ne saurait être recherchée pour tout dommage résultant d'un virus transmis.

This e-mail and the documents attached are confidential and intended solely for the addressee; it may also be privileged. If you receive this e-mail in error, please notify the sender immediately and destroy it. As its integrity cannot be secured on the Internet, the Worldline liability cannot be triggered for the message content. Although the sender endeavours to maintain a computer virus-free network, the sender does not warrant that this transmission is virus-free and will not be liable for any damages resulting from any virus transmitted.!!!"

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

Re: Famix entities packaging

Tudor Girba-2
Hi,

> On Dec 20, 2016, at 4:32 PM, Blondeau Vincent <[hidden email]> wrote:
>
> Hello,
>  
> In the context of Moose re-architecting, FAMIXCore package should contain only FAMIXCore classes, i.e., only classes common to all languages.

Great to hear about this effort. Please keep me in the loop and I try to help where I can.

> We detected some misplaced classes:
> - FAMIXTypeAlias should belong to the C package like FAMIXModule which is already in.

The problem is that the type alias has deep implication on the internal logic of types and I could not manage to make it an extension. If you manage, it would indeed be great to have it external.

> - FAMIXAnnotation*should belong to the Java package.

FAMIXAnnotation is not specific to Java as it is also used for Smalltalk, and can be used for C#.

> Do you think that these classes have to stay in the core package? Or can we move them?
>  
> BTW, we also added an opposite to the FAMIXException>> exceptionClass in FAMIXClass.

Great.

Cheers,
Doru


> Cheers,
> Anne & Vincent
>  
>
> !!!*************************************************************************************
> "Ce message et les pièces jointes sont confidentiels et réservés à l'usage exclusif de ses destinataires. Il peut également être protégé par le secret professionnel. Si vous recevez ce message par erreur, merci d'en avertir immédiatement l'expéditeur et de le détruire. L'intégrité du message ne pouvant être assurée sur Internet, la responsabilité de Worldline ne pourra être recherchée quant au contenu de ce message. Bien que les meilleurs efforts soient faits pour maintenir cette transmission exempte de tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa responsabilité ne saurait être recherchée pour tout dommage résultant d'un virus transmis.
>
> This e-mail and the documents attached are confidential and intended solely for the addressee; it may also be privileged. If you receive this e-mail in error, please notify the sender immediately and destroy it. As its integrity cannot be secured on the Internet, the Worldline liability cannot be triggered for the message content. Although the sender endeavours to maintain a computer virus-free network, the sender does not warrant that this transmission is virus-free and will not be liable for any damages resulting from any virus transmitted.!!!"
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.list.inf.unibe.ch/listinfo/moose-dev

--
www.tudorgirba.com
www.feenk.com

"We are all great at making mistakes."








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

Re: Famix entities packaging

Stephan Eggermont-3
In reply to this post by Blondeau Vincent


On 20/12/16 16:32, Blondeau Vincent wrote:
> In the context of Moose re-architecting, FAMIXCore package should > contain only FAMIXCore classes, i.e., only classes common to all > languages.
What does that practically mean? The semantics of core concepts
seems to be slightly different in all languages, and we noticed
when adding Delphi that a number of concepts were incompatible
and the hierarchy needed modifications.

Wouldn't it be better to have all building blocks in core and
compose them in the language packages?

Stephan

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

Re: Famix entities packaging

Nicolas Anquetil

yes, we had the same problems with some languages we added too.

The name is the same (class, method, function, package, ...) but they all have little sementic differences that make them difficult to unify.

One solution we thought about would be to have some basic "building blocks" from which the proper entities would be composed (like proposed by Stephan).

Some possible building blocks we could think about are:

- Container (should it be specialized according to the kind of entities it may contain?)

- Behavioural (makes invocations, accesses)

- Type (used in TypedEntity)

- TypedEntity (e.g. Variables and Functions)

- Variable

- NameScope

- MultiPart (definition is the union of several parts found in different "places", e.g. classes in C#)

- Generic (can be made concrete by an entity of the same kind, e.g. generic classes and template methods, has untyped "parameters")


e.g. in Ada, a package is a Container, a NameScope, a Behavioural, and a MultiPart


It is not yet clear how this could work:

- can we find a finite list of core building blocks?

- are they really core, or are they themselves subject to little semantic differences (like container of functions and container of classes)?

- is it implementable?

Starting next year, we will be studying this in more details

nicolas


On 20/12/2016 18:27, Stephan Eggermont wrote:


On 20/12/16 16:32, Blondeau Vincent wrote:
> In the context of Moose re-architecting, FAMIXCore package should > contain only FAMIXCore classes, i.e., only classes common to all > languages.
What does that practically mean? The semantics of core concepts
seems to be slightly different in all languages, and we noticed
when adding Delphi that a number of concepts were incompatible
and the hierarchy needed modifications.

Wouldn't it be better to have all building blocks in core and
compose them in the language packages?

Stephan


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

-- 
Nicolas Anquetil -- MCF (HDR)
Project-Team RMod

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