A trace model for pointers and objects

C. A.R. Hoare, He Jifeng

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

31 Scopus citations

Abstract

Object-oriented programs [Dahl, Goldberg, Meyer] are notoriously prone to the following kinds of error, which could lead to increasingly severe problems in the presence of tasking 1. Following a null pointer 2. Deletion of an accessible object 3. Failure to delete an inaccessible object 4. Interference due to equality of pointers 5. Inhibition of optimisation due to fear of (4) Type disciplines and object classes are a great help in avoiding these errors. Stronger protection may be obtainable with the help of assertions, particularly invariants, which are intended to be true before and after each call of a method that updates the structure of the heap. This note introduces a mathematical model and language for the formulation of assertions about objects and pointers, and suggests that a graphical calculus [Curtis, Lowe] may help in reasoning about program correctness. It deals with both garbage-collected heaps and the other kind. The theory is based on a trace model of graphs, using ideas from process algebra; and our development seeks to exploit this analogy as a unifying principle.

Original languageEnglish
Title of host publicationECOOP 1999 – Object-Oriented Programming - 13th European Conference, Proceedings
EditorsRachid Guerraoui
PublisherSpringer Verlag
Pages1-18
Number of pages18
ISBN (Print)3540661565, 9783540661566
DOIs
StatePublished - 1999
Externally publishedYes
Event13th European Conference on Object-Oriented Programming, ECOOP 1999 - Lisbon, Portugal
Duration: 14 Jun 199918 Jun 1999

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume1628
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference13th European Conference on Object-Oriented Programming, ECOOP 1999
Country/TerritoryPortugal
CityLisbon
Period14/06/9918/06/99

Fingerprint

Dive into the research topics of 'A trace model for pointers and objects'. Together they form a unique fingerprint.

Cite this