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

Reply via email to