Ownership Confinement Ensures Representation Independence for Object-Oriented Programs (2002)
| Citations: | 56 - 29 self |
BibTeX
@MISC{Banerjee02ownershipconfinement,
author = {Anindya Banerjee and David A. Naumann},
title = {Ownership Confinement Ensures Representation Independence for Object-Oriented Programs},
year = {2002}
}
Years of Citing Articles
OpenURL
Abstract
This paper formulates representation independence for classes, in an imperative, object-oriented language with pointers, subclassing and dynamic dispatch, class oriented visibility control, recursive types and methods, and a simple form of module. An instance of a class is considered to implement an abstraction using private fields and so-called representation objects. Encapsulation of representation objects is expressed by a restriction, called confinement, on aliasing. Representation independence is proved for programs satisfying the confinement condition. A static analysis is given for confinement that accepts common designs such as the observer and factory patterns. The formalization takes into account not only the usual interface between a client and a class that provides an abstraction but also the interface (often called "protected") between the class and its subclasses







