Pointers and records in the unifying theories of programming

  • Authors:
  • Ana Cavalcanti;Will Harwood;Jim Woodcock

  • Affiliations:
  • Department of Computer Science York, University of York, UK;Citrix Systems (R & D) Ltd, Cambourne, Cambs, UK;Department of Computer Science York, University of York, UK

  • Venue:
  • UTP'06 Proceedings of the First international conference on Unifying Theories of Programming
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a theory of pointers and records that provides a representation for objects and sharing in languages like Java and C++. Our approach to pointers is based on Paige’s entity groups, which give an abstract view of storage as equivalence classes of variables that share the same memory location. We first define our theory as a restriction of the general theory of relations, and, as a consequence, it does not distinguish between terminating and non-terminating programs. Therefore, we link it with the theory of designs, providing a foundation for reasoning about total correctness of pointer-based sequential programs. Our work is a step towards the semantics of an object-oriented language that also integrates constructs for specifying state-rich and concurrent systems.