Hi folks. I was reading chapter 13 of PBE and there is something I don't understand.
In page 283 it says: "Every metaclass is-a class, hence inherits from Class. Class in turn inherits from its superclasses, ClassDescription and Behavior." page 278, rule 8, it says: "Every metaclass inherits from Class and Behavior." However, if I open a class browser, I see that Metaclass inherits from ClassDescription, not Class. So, I don't understand :( Can anyone clarify me this? Thanks Mariano _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
2009/10/21 Mariano Martinez Peck <[hidden email]>:
> Hi folks. I was reading chapter 13 of PBE and there is something I don't > understand. > > In page 283 it says: > > "Every metaclass is-a class, hence inherits from Class. Class in turn > inherits from its superclasses, ClassDescription and Behavior." > > page 278, rule 8, it says: > > "Every metaclass inherits from Class and Behavior." > > > However, if I open a class browser, I see that Metaclass inherits from > ClassDescription, not Class. So, I don't understand :( > > Can anyone clarify me this? > The topmost superclass of Metaclass is a ProtoObject class (as for any other class). You can see it yourself: Metaclass superclass superclass superclass superclass now if you take a look, what is the class of the above object, you'll see: (Metaclass superclass superclass superclass superclass) class -> ProtoObject class and now: (ProtoObject class) superclass => Class so, lets roll things back.. ProtoObject class superclass => Class means that ProtoObject object is an instance of class, which inherits from Class. Or, since ProtoObject is class itself, then the 'ProtoObject class' expression should return a metaclass, then you can see that a most basic metaclass inherits from Class. and hence: "Every metaclass inherits from Class and Behavior." > Thanks > > Mariano > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
On Tue, Oct 20, 2009 at 10:23 PM, Igor Stasenko <[hidden email]> wrote: 2009/10/21 Mariano Martinez Peck <[hidden email]>: Thanks Igor. This was the part I was missing :) so, lets roll things back.. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Yeap
BTW to get started with your new life :) I suggest you to implement objvlisp http://stephane.ducasse.free.fr/Teaching/Lille/0910-MetaModelisation/ObjVlispTD/ http://stephane.ducasse.free.fr/Teaching/Lille/0910-MetaModelisation/ObjVlispDocuments/ this way we are sure we are all in sync :) Stef On Oct 21, 2009, at 3:36 AM, Mariano Martinez Peck wrote: > > > On Tue, Oct 20, 2009 at 10:23 PM, Igor Stasenko <[hidden email]> > wrote: > 2009/10/21 Mariano Martinez Peck <[hidden email]>: > > Hi folks. I was reading chapter 13 of PBE and there is something I > don't > > understand. > > > > In page 283 it says: > > > > "Every metaclass is-a class, hence inherits from Class. Class in > turn > > inherits from its superclasses, ClassDescription and Behavior." > > > > page 278, rule 8, it says: > > > > "Every metaclass inherits from Class and Behavior." > > > > > > However, if I open a class browser, I see that Metaclass inherits > from > > ClassDescription, not Class. So, I don't understand :( > > > > Can anyone clarify me this? > > > > The topmost superclass of Metaclass is a ProtoObject class (as for any > other class). > You can see it yourself: > Metaclass superclass superclass superclass superclass > > now if you take a look, what is the class of the above object, > you'll see: > > (Metaclass superclass superclass superclass superclass) class > -> ProtoObject class > > and now: > > (ProtoObject class) superclass => Class > > > Thanks Igor. This was the part I was missing :) > > > so, lets roll things back.. > > ProtoObject class superclass => Class > > means that ProtoObject object is an instance of class, which inherits > from Class. > Or, since ProtoObject is class itself, then the 'ProtoObject class' > expression should return a metaclass, then you can see that > a most basic metaclass inherits from Class. > > and hence: "Every metaclass inherits from Class and Behavior." > > > Thanks > > > > Mariano > > > > > > _______________________________________________ > > Pharo-project mailing list > > [hidden email] > > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > > > > -- > Best regards, > Igor Stasenko AKA sig. > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Free forum by Nabble | Edit this page |