40 Years of Computing at Newcastle

Department Technical Report Series No. 586

On Programming Atomic Actions in Ada 95

A. Romanovsky, S.E. Mitchell and A.J. Wellings

University of Newcastle upon Tyne. 1997.

Abstract

This paper describes the development of two kinds of atomic action schemes for Ada 95. We start by discussing the basic features required of an atomic action scheme and what choices, e.g. between synchronous and asynchronous actions, are appropriate for Ada 95. We then present two implementations of actions; first using Ada 95 packages to create asynchronous actions and secondly, as sets of tasks for synchronous actions. For each action type, we present code fragments illustrating their development and use. Finally, we discuss some related issues (exception resolution, action nesting, state restoration, software re-use and extension, preventing information smuggling, distributed execution) which have been addressed in our work and show some of the problems encountered (the deserter problem, using different sorts of inter-participant communications and resources).
Department Technical Report Series - 1997
Department Technical Report Series Index
Contents Page - 40 Years of Computing at Newcastle
Technical Report Abstract No. 586, 30 June 1997