next up previous contents
Next: ClassesInstances, and Up: Introduction Previous: Related Work

Outline of this Report

 

In chapter gif it is summarized how to define classes and instances of classes. It is shown how methods in classes can be activated via message passing. More interesting for all but novices in the field, it is also worked out how to use generic procedure calls instead of message passing.

Chapter gif introduces hierarchies of classes and inheritance of methods. Two particular state variables are introduced, namely self and super . It is discussed how self can be defined in case we want to simulate virtual-like procedures (in the Simula sense). Two different representations of objects are discussed in this chapter. The most elaborate of these is called the object precedence list representation, and it is really introduced as a preparation for the chapter on multiple inheritance.

Multiple inheritance is the theme of chapter gif. Two different approaches to the handling of multiple inheritance are discussed. The first of these can be characterized as a natural ``first try''. The other one deals with how to avoid multiple instantiations of parts of objects. In addition I discuss in this chapter how a method combination facility can be simulated. The chapter is concluded with a section on a simple method caching technique, which speeds up the method lookup process.

In chapter gif it is discussed how classes themselves can be treated as objects. The underlying classes of class-objects are traditionally called metaclasses, and the objects which represent the classes are called meta-objects. I describe an exercise in the definition of the most general classes in a class hierarchy and a metaclass hierarchy. The purpose of this exercise is to demonstrate how experience in this enterprise can be collected via simulations in Scheme. As an important part of the exercise I focus on how object instantiation can be arranged via message passing to the meta-objects.

Besides a bibliography, there is an program index at the end of the report.



next up previous contents
Next: ClassesInstances, and Up: Introduction Previous: Related Work



Kurt Noermark
Wed Mar 6 10:30:05 MET 1996