8. Abstract data types:
This chapter considers the notion of abstract data types
from the perspective of types as constraints.
It presents an algebraic approach in which objects
may be characterized as algebras.
Further, it explains the difference between
the classical approach of realizing abstract data types
in procedural languages and the realization of abstract
data types in object-oriented languages.
The implications
of a more pragmatic conception of types
is also discussed.