Logo[ Bristol CS | Index ]

A declarative approach to concurrent programming

Steve Gregory. 1997.
In Proceedings of the 9th International Symposium on Programming Languages, Implementations, Logics, and Programs, H. Glaser (Ed.). Springer-Verlag.

Tempo is a language based on classical first-order logic, which can be used for both specifying and implementing concurrent systems. As a declarative programming language, it is unique in that a program explicitly specifies the safety properties that it satisfies. Unlike most specification languages, a Tempo specification of a concurrent system can be executed, also concurrently.

An earlier paper presented a subset of Tempo, in which simple synchronization problems could be expressed by precedence relations between events. In this paper we describe a major extension to the language which greatly increases its expressive power. In particular, the language now includes facilities to perform computation -- data values, operations on them, and control features -- as well as synchronization.

The full paper is available in gzipped PostScript format.


Steve Gregory

Steve Gregory, steve@cs.bris.ac.uk. Last modified on Monday 12 June 2000 at 15:37. © 2000 University of Bristol