[Python-Dev] Classes and Metaclasses in Smalltalk (original) (raw)

Thomas Heller thomas.heller@ion-tof.com
Wed, 2 May 2001 13:12:21 +0200


Jim Althoff (a big commercial user of J[P]ython) sent me a summary of how metaclasses work in Smalltalk. He should know, since he invented them! :-) I include it below, with his permission.

I found this very interesting reading.

[From Jim Althoff]

In the list below, indentation indicates class hieararchy (superclass -- subclass) The indentation, unfortunately, seems to be destroyed.

plain-class ---------------- o Class o Object isInstanceOf o ObjectMetaClass isInstanceOf MetaClass o Class isInstanceOf o ClassMetaClass isInstanceOf MetaClass o MetaClass isInstanceOf o MetaClassMetaClass isInstanceOf MetaClass . . . o Rectangle isInstanceOf o RectangleMetaClass isInstanceOf MetaClass o SpecializedRectangle isInstanceOf o SpecializedRectangleMetaClass isInstanceOf MetaClass

A question for Jim (this is more Smalltalk than Python related): How does the Behaviour class fit into this picture?

Thhomas