An Abstract View of Objects and Subtyping

Martin Hofmann and Benjamin C Pierce

Abstract: We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programming - object, method, message passing, and subtyping - by introducing explicit object types together with suitable introduction, elimination, and equality rules. This abstract framework represents a first step towards a high-level axiomatization of object-oriented programming, and provides a common basis for justifying and comparing previous encodings of objects in terms of the seemingly diverse machinery of recursive record types, F-bounded quantification, and existential types [Pierce and Turner, 92].

LFCS report ECS-LFCS-92-226

A modified and extended version of this report has now been published in The Journal of Functional Programming, 1996.

Previous | Index | Next