This chapter is about object-oriented
programming languages.
It presents an overview of existing
languages and discusses their heritage from
Simula.
Further, it contains a detailed comparison
of the three major object-oriented languages;
Smalltalk, Eiffel, C++ and Java.
It discusses the design dimensions of object-oriented
languages and proposes orthogonal dimensions of design,
following
As subjects for a paper, you may think of
where X may range over Turbo Pascal, Nexpert Object, or any language that claims to be object-oriented. Features to pay attention to include protection mechanisms and inheritance.
As practical assignments you may think of
where X may be any non object-oriented language. An interesting project would be to develop an object-oriented extension of yacc.