A, B, C have a null list of super classes. In this case, the system will replace it by the list which only contains <object>, the root of all the classes defined by define-class. D, E, F use multiple inheritance: each class inherits from two previously defined classes. Those class definitions define a hierarchy which is shown in Figure 1. In this figure, the class <top> is also shown; this class is the super class of all Scheme objects. In particular, <top> is the super class of all standard Scheme types.
The set of slots of a given class is calculated by ``unioning'' the slots of
all its super class. For instance, each instance of the class D, defined
before will have three slots (a, b and d). The slots of a class
can be obtained by the class-slots primitive.
For instance,