Object Connectivity and Full Abstraction for a Concurrent Calculus of Classes

Extended Abstract
  • Erika Ábrahám
  • Marcello M. Bonsangue
  • Frank S. de Boer
  • Martin Steffen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3407)

Abstract

The concurrent object calculus has been investigated as a core calculus for imperative, object-oriented languages with multithreading and heap-allocated objects. The combination of this form of concurrency with objects corresponds to features known from the popular language Java. One distinctive feature, however, of the concurrent object calculus is that it is object-based, whereas the mainstream of object-oriented languages is class-based.

This work explores the semantical consequences of introducing classes to the calculus. Considering classes as part of a component makes instantiation a possible interaction between component and environment. A striking consequence is that to characterize the observable behavior we must take connectivity information into account, i.e., the way objects may have knowledge of each other. In particular, unconnected environment objects can neither determine the absolute order of interaction and furthermore cannot exchange information to compare object identities.

We formulate an operational semantics that incorporates the connectivity information into the scoping mechanism of the calculus. As instantiation itself is unobservable, objects are instantiated only when accessed for the first time (“lazy instantiation”).

Furthermore we use a corresponding trace semantics for full abstraction wrt. a may-testing based notion of observability.

Keywords

multithreading class-based object-oriented languages formal semantics full abstraction 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Erika Ábrahám
    • 2
  • Marcello M. Bonsangue
    • 3
  • Frank S. de Boer
    • 4
  • Martin Steffen
    • 1
  1. 1.Christian-Albrechts-UniversityKielGermany
  2. 2.University FreiburgGermany
  3. 3.University LeidenThe Netherlands
  4. 4.CWIAmsterdamThe Netherlands

Personalised recommendations