Back to the future: SIMULA style concurrent objects

  • Authors:
  • Ole Lehrmann Madsen

  • Affiliations:
  • Aarhus University and The Alexandra Institute, Aarhus, Denmark

  • Venue:
  • Proceedings of the 2013 workshop on Programming based on actors, agents, and decentralized control
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this talk, we will describe the approach to concurrency in SIMULA 67, the very first object-oriented language and the further development of this in the Beta language. Active objects in the form of coroutines are an integral part of the design of SIMULA and Beta and provide a strong basis for defining high-level concurrency abstractions including schedulers for concurrent objects. In this sense, SIMULA was ahead of most concurrent object-oriented languages. Like Java, SIMULA and Beta have a serious weakness with respect to concurrency since it is not possible to check that concurrent processes access disjoint sets of variables only and do not interfere with each other in time-dependent ways. We present work on development of language mechanisms that make it possible to retain the flexibility of defining a wide class of safe high-level concurrency abstractions from low-level primitives.