Nadia Busi, Gianluigi Zavattaro
Journal of Logic and Algebraic Programming 75(1), pages 52-85
February-March 2008
Coordination languages were introduced in the early 1980s as programming notations to manage the interaction among concurrent collaborating software entities. Process algebras have been successfully exploited for the formal definition of the semantics of these languages and as a framework for the comparison of their expressive power. We provide an incremental and uniform presentation of a collection of process calculi featuring coordination primitives for the shared dataspace coordination model (inspired by Linda, JavaSpaces, TSpaces, and the like). On the one hand, the incremental presentation of the various calculi permits to reason about specific linguistic constructs of coordination languages. On the other hand, the uniform presentation of a family of related calculi allows us to obtain an overview of the main results achieved in the literature on different (and unrelated) calculi.
keywords
Process calculi; Coordination models and languages; Tuple spaces; Event notification; Transactions