hi!
Why is there not a method atMethodScope?
Also, why is there not a atClassScope? Apparently this method is deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may define an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre
In (default) FAMIX type and classes are very similar For example FamixType has attributes, methods, supertype, ...
As for (java) interfaces they are implemented as FamixClass with the property isInterface
I guess there are lots of historical reasons behind this.
So therewas asClassScope at the begining of Moosechef if I recall correctly, but it was renamed asTypeScope
A look in moose-dev list shows a discussion o this topic in february 2013: "Issue 906 in moose-technology:"
nicolas
On 21/09/2015 16:17, Alexandre Bergel wrote:
hi!
Why is there not a method atMethodScope?
Also, why is there not a atClassScope? Apparently this method is deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may define an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre
Hi,
In order to solve all these problems, we developed the new version of MooseChef a.k.a MooseQuery. There are two methods atScope: and toScope: taking a famix class name (e.g. atScope: FAMIXMethod) to go up (respectively down) in the containment tree until entities of the specified type.
Cheers, Anne Le 21 sept. 2015 à 16:17, Alexandre Bergel alexandre.bergel@me.com a écrit :
hi!
Why is there not a method atMethodScope?
Also, why is there not a atClassScope? Apparently this method is deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may define an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
There is implementor of atScope: in my image. I have the last version of Famix-Core loaded…
Alexandre
On Sep 21, 2015, at 1:58 PM, Anne Etien anne.etien@univ-lille1.fr wrote:
Hi,
In order to solve all these problems, we developed the new version of MooseChef a.k.a MooseQuery. There are two methods atScope: and toScope: taking a famix class name (e.g. atScope: FAMIXMethod) to go up (respectively down) in the containment tree until entities of the specified type.
Cheers, Anne Le 21 sept. 2015 à 16:17, Alexandre Bergel alexandre.bergel@me.com a écrit :
hi!
Why is there not a method atMethodScope?
Also, why is there not a atClassScope? Apparently this method is deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may define an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
atScope: is not yet in FAMIX. Is it possible that loaded the new MooseQuery?
Doru
On Tue, Sep 22, 2015 at 2:25 AM, Alexandre Bergel alexandre.bergel@me.com wrote:
There is implementor of atScope: in my image. I have the last version of Famix-Core loaded…
Alexandre
On Sep 21, 2015, at 1:58 PM, Anne Etien anne.etien@univ-lille1.fr
wrote:
Hi,
In order to solve all these problems, we developed the new version of
MooseChef a.k.a MooseQuery. There are two methods atScope: and toScope: taking a famix class name (e.g. atScope: FAMIXMethod) to go up (respectively down) in the containment tree until entities of the specified type.
Cheers, Anne Le 21 sept. 2015 à 16:17, Alexandre Bergel alexandre.bergel@me.com a
écrit :
hi!
Why is there not a method atMethodScope?
Also, why is there not a atClassScope? Apparently this method is
deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may define an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi!
Why is there not a method atMethodScope?
I have just added #atMethodScope defined as:
MooseQueryResult>>atMethodScope
^ self opposites
Looks okay no?
Alexandre
Also, why is there not a atClassScope? Apparently this method is deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may define an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-----Message d'origine----- De : moose-dev-bounces@iam.unibe.ch [mailto:moose-dev- bounces@iam.unibe.ch] De la part de Alexandre Bergel Envoyé : mardi 22 septembre 2015 16:44 À : Moose-related development Objet : [Moose-dev] Re: Question about MooseChef
Hi!
Hi,
Why is there not a method atMethodScope?
I have just added #atMethodScope defined as:
MooseQueryResult>>atMethodScope
^ self opposites
Looks okay no?
For some cases yes, but for others no!
It didn't work if your association "opposite" is something else than a method. Try on a method of your model where the result is not empty: self queryOutgoingAccesses atMethodScope
You will see that the result is not methods but attributes. If you query references, you will get classes instead of methods...
I think you should use MooseQuery that is designed to resolve these issues:
MCHttpRepository location: 'http://smalltalkhub.com/mc/AnneEtien/MooseQueryDraft/main' user: '' password: ''
Cheers, Vincent
Alexandre
Also, why is there not a atClassScope? Apparently this method is
deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may define an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
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.
+1
Doru
On Tue, Sep 22, 2015 at 5:32 PM, Blondeau Vincent < vincent.blondeau@worldline.com> wrote:
-----Message d'origine----- De : moose-dev-bounces@iam.unibe.ch [mailto:moose-dev- bounces@iam.unibe.ch] De la part de Alexandre Bergel Envoyé : mardi 22 septembre 2015 16:44 À : Moose-related development Objet : [Moose-dev] Re: Question about MooseChef
Hi!
Hi,
Why is there not a method atMethodScope?
I have just added #atMethodScope defined as:
MooseQueryResult>>atMethodScope
^ self opposites
Looks okay no?
For some cases yes, but for others no!
It didn't work if your association "opposite" is something else than a method. Try on a method of your model where the result is not empty: self queryOutgoingAccesses atMethodScope
You will see that the result is not methods but attributes. If you query references, you will get classes instead of methods...
I think you should use MooseQuery that is designed to resolve these issues:
MCHttpRepository location: ' http://smalltalkhub.com/mc/AnneEtien/MooseQueryDraft/main' user: '' password: ''
Cheers, Vincent
Alexandre
Also, why is there not a atClassScope? Apparently this method is
deprecated and one should use atTypeScope instead. However, a class define a type, but a type does not necessarily defines a class. It may
define
an interface. I have the impression that atTypeScope and atClassScope are both relevant. We could even introduce atInterfaceScope.
Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
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 Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi!
It didn't work if your association "opposite" is something else than a method. Try on a method of your model where the result is not empty: self queryOutgoingAccesses atMethodScope
I have tried only on outgoing invocations. I wrote a test about it. But yes, what I have done is probably not optimal.
You will see that the result is not methods but attributes. If you query references, you will get classes instead of methods...
I think you should use MooseQuery that is designed to resolve these issues:
MCHttpRepository location: 'http://smalltalkhub.com/mc/AnneEtien/MooseQueryDraft/main' user: '' password: ''
Well… I think MooseQuery should be added to Moose and not loaded as a separate package. What is the status of it? I had a look at Famix-Core.MooseQueryEXPERIMENTAL and MooseQuery. Tests are green and it looks okay. So, what next?
Alexandre
as explained by Vincent, opposites gives you the entities on the other end of the association you queried for outgoing invocationsm the opposite can only be the invoked methods. so it does what you want
but we qny other associations it will fail to return methods
the idea of atXXScope is that it raises or lowers the result to the appropriate level. So outgoingInvocation should normally give methods, but with atPackageScope, it will return the packages containing the methods
Therefore your implementation does not work
and it can be actually tricky to make it work. The problem being that from the result you have, the system must "guess"whether the scope asked is obtained by going up the containement tree, for example from method to their classes (belongsTo) to their packages (belongsTo) , or down the treem for example one could asked all the referenced classes and down to their methods.
This is what the new MooseQuery solves with the two scoping selectors that Anne mentionned
nicolas
On 22/09/2015 21:07, Alexandre Bergel wrote:
Hi!
It didn't work if your association "opposite" is something else than a method. Try on a method of your model where the result is not empty: self queryOutgoingAccesses atMethodScope
I have tried only on outgoing invocations. I wrote a test about it. But yes, what I have done is probably not optimal.
You will see that the result is not methods but attributes. If you query references, you will get classes instead of methods...
I think you should use MooseQuery that is designed to resolve these issues:
MCHttpRepository location: 'http://smalltalkhub.com/mc/AnneEtien/MooseQueryDraft/main' user: '' password: ''
Well… I think MooseQuery should be added to Moose and not loaded as a separate package. What is the status of it? I had a look at Famix-Core.MooseQueryEXPERIMENTAL and MooseQuery. Tests are green and it looks okay. So, what next?
Alexandre
So outgoingInvocation should normally give methods,
Shouldn’t it return invocations? It would be surprising that it return methods.
This is what the new MooseQuery solves with the two scoping selectors that Anne mentionned
Yes, I had a look at MooseQuery, and apparently it deserves to be in the image.
Alexandre
Yes, MooseQuery should be integrated now. I am waiting for that :)
Doru
On Tue, Sep 22, 2015 at 10:43 PM, Alexandre Bergel alexandre.bergel@me.com wrote:
So outgoingInvocation should normally give methods,
Shouldn’t it return invocations? It would be surprising that it return methods.
This is what the new MooseQuery solves with the two scoping selectors
that Anne mentionned
Yes, I had a look at MooseQuery, and apparently it deserves to be in the image.
Alexandre
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi,
We are very happy that you are all waiting for MooseQuery integration. We didn’t know that we could integrate it.
I have currently some personal problems to manage and so I am not very available. Next week, I will be at ICSME (with the workshops, there will be 4 papers about software evolution analysis, with Moose or Pharo). Jean-Christophe has a new associate professor position in Brest and so is not very available neither.
We should be able to do the integration before the middle of Octobre. Sorry for the delays.
Cheers,
Anne
Le 22 sept. 2015 à 22:51, Tudor Girba tudor@tudorgirba.com a écrit :
Yes, MooseQuery should be integrated now. I am waiting for that :)
Doru
On Tue, Sep 22, 2015 at 10:43 PM, Alexandre Bergel alexandre.bergel@me.com wrote:
So outgoingInvocation should normally give methods,
Shouldn’t it return invocations? It would be surprising that it return methods.
This is what the new MooseQuery solves with the two scoping selectors that Anne mentionned
Yes, I had a look at MooseQuery, and apparently it deserves to be in the image.
Alexandre
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing has its own flow" _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi Anne,
Will you happen to also be at Bremen during VISSOFT? If yes, we could meet on Sunday or Monday morning.
Cheers, Doru
On Fri, Sep 25, 2015 at 7:50 AM, Anne Etien anne.etien@univ-lille1.fr wrote:
Hi,
We are very happy that you are all waiting for MooseQuery integration. We didn’t know that we could integrate it.
I have currently some personal problems to manage and so I am not very available. Next week, I will be at ICSME (with the workshops, there will be 4 papers about software evolution analysis, with Moose or Pharo). Jean-Christophe has a new associate professor position in Brest and so is not very available neither.
We should be able to do the integration before the middle of Octobre. Sorry for the delays.
Cheers,
Anne
Le 22 sept. 2015 à 22:51, Tudor Girba tudor@tudorgirba.com a écrit :
Yes, MooseQuery should be integrated now. I am waiting for that :)
Doru
On Tue, Sep 22, 2015 at 10:43 PM, Alexandre Bergel < alexandre.bergel@me.com> wrote:
So outgoingInvocation should normally give methods,
Shouldn’t it return invocations? It would be surprising that it return methods.
This is what the new MooseQuery solves with the two scoping selectors
that Anne mentionned
Yes, I had a look at MooseQuery, and apparently it deserves to be in the image.
Alexandre
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing has its own flow" _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev