Prioritized and parallel reactions in shared data space coordination languages

  • Authors:
  • Nadia Busi;Gianluigi Zavattaro

  • Affiliations:
  • Dipartimento di Scienze dell'Informazione, Università di Bologna, Bologna, Italy;Dipartimento di Scienze dell'Informazione, Università di Bologna, Bologna, Italy

  • Venue:
  • COORDINATION'05 Proceedings of the 7th international conference on Coordination Models and Languages
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Reactive programming has been added to the traditional Linda programming style in order to deal with the dynamic aspects of those applications in which it is important to observe modifications of the environment which occur quickly. Reactive programming is embedded in shared data spaces by defining the observable entities and the corresponding reactions that usually are processes possibly executing coordination primitives. Typical observable entities are the presence in the space of a datum (state-based) or the execution of a particular primitive (event-based). In this paper we consider different models of reaction execution adopted in the coordination literature so far, namely the prioritized model (used e.g. in MARS [3], TuCSoN [8] and LIME [9]) and the parallel execution model (considered e.g. in JavaSpaces [13 ], TSpaces [14] and WCL [11]). Prioritized reactions are usually implemented at server-side as during their execution no other coordination primitives can take place; parallel reactions, more suited when reactions are executed at client-side, are executed in parallel with the other processes in the system (thus other coordination primitives can interleave with the reactions). Using a process algebraic setting we perform a rigorous investigation of the relative advantages and disadvantages of these two models for reaction execution.