2009/10/21 Mariano Martinez Peck <[email protected]>: > 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 > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
