Object-Oriented Type Systems
Jens Palsberg, Michael I. Schwartzbach
Type systems are required to ensure reliability and efficiency of software. For object-oriented languages, typing is an especially challenging problem because of inheritance, assignment, and late binding. Existing languages employ different type systems, and it can be difficult to compare, evaluate and improve them, since there is currently no uniform theory for such languages. This book provides such a theory. The authors review the type systems of Simula, Smalltalk, C++ and Eiffel and present a type system that generalizes and explains them. The theory is based on an idealized object-oriented language called BOPL (Basic Object Programming Language), containing common features of the above languages. A type system, type inference algorithm, and typings of inheritance and genericity are provided for BOPL. Throughout, the results are related to the languages on which BOPL is based. This text offers advanced undergraduates and professional software developers a sound understanding of the key aspects of object-oriented type systems. All algorithms are implemented in a freely available workbench, adding enormous practical value. Numerous exercises and a clear writing style will enhance its appeal to the student.
Table of Contents
- Object-Oriented Languages and Type Systems.
The BOPL Language.
Copyright © 1999 John Wiley & Sons, Wiley Computer Books