Hi everyone.
Probably I’ve missed something, but how does it work in a way that when you select “All methods” in MooseFinder you get a FAMIXMethodGroup, and not just a MooseGroup? I’ve checked all the methods of FAMIXMethodGroup and all references to FAMIXMethodGroup, but I can’t figure it out. Cheers Uko _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hail to the Pharo! I’ve figured it out by putting a breakpoint in FAMIXMethodGroup instance creations. And I have to say that there is quite a lot of meta-magic involved :)
On 12 Nov 2013, at 23:04, Yuriy Tymchuk <[hidden email]> wrote: > Hi everyone. > > Probably I’ve missed something, but how does it work in a way that when you select “All methods” in MooseFinder you get a FAMIXMethodGroup, and not just a MooseGroup? I’ve checked all the methods of FAMIXMethodGroup and all references to FAMIXMethodGroup, but I can’t figure it out. > > Cheers > Uko > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hi Uko, Groups are essential for Moose. When we have one entity, we have polymorphism and because of that we can nicely map menu items and scripting methods on unary messages. To have the same on groups of objects, we needed to have polymorphism as well.
The magic related to the type inference is more interesting when you interactively choose entities to go in a group. Then, based on the type of the elements, the group type changes at runtime. This dynamic typing logic is documented here:
MooseGroupTest>>testGroupType Let me know if you have more questions. Cheers, Doru p.s. When trying to understand a class in Pharo, it is always a good idea to check the superclasses :)
On Tue, Nov 12, 2013 at 11:51 PM, Yuriy Tymchuk <[hidden email]> wrote: Hail to the Pharo! I’ve figured it out by putting a breakpoint in FAMIXMethodGroup instance creations. And I have to say that there is quite a lot of meta-magic involved :) "Every thing has its own flow"
_______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
On 13 Nov 2013, at 06:36, Tudor Girba <[hidden email]> wrote:
I figured it out myself. The only thing is that when you look at existing implementations you can’t see what you have to do to make it work. But now I see that there is a little guide in MooseGroup comments. Uko
_______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Free forum by Nabble | Edit this page |