Download PDF

Science of Computer Programming

Publication date: 2011-08-01
Volume: 76 Pages: 681 - 710
Publisher: North-Holland Pub. Co.

Author:

Clarke, Dave
Proenca, Jose ; Lazovik, Alexander ; Arbab, Farhad

Keywords:

coordination, constraint satisfaction, Science & Technology, Technology, Computer Science, Software Engineering, Computer Science, Coordination, Constraint satisfaction, Constraint automata, Reo, Connector colouring, COMPONENT CONNECTORS, REO, MODEL, 0803 Computer Software, Software Engineering, 4606 Distributed computing and systems software, 4608 Human-centred computing, 4612 Software engineering

Abstract:

Coordination in Reo emerges from the composition of the behavioural constraints of primitives, such as channels, in a component connector. Understanding and implementing Reo, however, has been challenging due to interaction of the channel metaphor, which is an inherently local notion, and the non-local nature of the constraints imposed by composition. In this paper, the channel metaphor takes a back seat. We focus on the behavioural constraints imposed by the composition of primitives and phrase the semantics of Reo as a constraint satisfaction problem. Not only does this provide a clear description of the behaviour of Reo connectors in terms of synchronisation and data flow constraints, it also paves the way for new implementation techniques based on constraint satisfaction. We also demonstrate that this approach is more efficient than existing techniques based on connector colouring.