State based ownership, reentrance, and encapsulation

Anindya Banerjee, David A. Naumann

Research output: Contribution to journalConference articlepeer-review

24 Scopus citations

Abstract

A properly encapsulated data representation can be revised for refactoring or other purposes without affecting the correctness of client programs and extensions of a class. But encapsulation is difficult to achieve in object-oriented programs owing to heap based structures and reentrant callbacks. This paper shows that it is achieved by a discipline using assertions and auxiliary fields to manage invariants and transferable ownership. The main result is representation independence: a rule for modular proof of equivalence of class implementations.

Original languageEnglish
Pages (from-to)387-411
Number of pages25
JournalLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume3586
DOIs
StatePublished - 2005
Event19th European Conference on Object-Oriented Programming, ECOOP 2005 - Glasgow, United Kingdom
Duration: 25 Jul 200529 Jul 2005

Fingerprint

Dive into the research topics of 'State based ownership, reentrance, and encapsulation'. Together they form a unique fingerprint.

Cite this