Generative communication in Linda
ACM Transactions on Programming Languages and Systems (TOPLAS)
Petri nets: an introduction
Complexity results for 1-safe nets
Theoretical Computer Science
Proceedings of the 21st international conference on Software engineering
Computability of Recursive Functions
Journal of the ACM (JACM)
Communication and Concurrency
On the Expressiveness of Event Notification in Data-Driven Coordination Languages
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
Reactive Tuple Spaces for Mobile Agent Coordination
MA '98 Proceedings of the Second International Workshop on Mobile Agents
IBM Systems Journal
Computation: finite and infinite machines
Computation: finite and infinite machines
Journal of Computer and System Sciences
Termination and divergence are undecidable under a maximum progress multi-step semantics for linca
ICTAC'06 Proceedings of the Third international conference on Theoretical Aspects of Computing
Statelets: coordination of social collaboration processes
COORDINATION'12 Proceedings of the 14th international conference on Coordination Models and Languages
Hi-index | 0.00 |
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.