This chapter treats polymorphism
from a foundational perspective.
It characterizes abstract inheritance
as employed in knowledge representation
and proceeds with a formal definition
of the subtype relation, culminating in
a family of calculi for a type theoretical
analysis of the constructs employed in
object-oriented programming.
The features studied include generic types,
overloading, data hiding and self-references.
Hints
Project assignments
Due to the formal background needed, the project assignments listed below have the flavor of research projects and must be considered for advanced students only. Possible assignments are
Since some of this work has already be done (see below),
one may simply advise students to study
these efforts.
Comments
(C) Æliens 04/09/2009
You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.