Over the past decades, coordination languages emerged for modeling and implementing concurrency protocols among components in component-based systems. Coordination languages allow programmers to express concurrency protocols at a higher and more appropriate level of abstraction than what traditional programming and scripting languages offer.In this paper, we extend a significant coordination model-constraint automata-with a mechanism to finitely and compactly deal with infinite data domains, including foundational notions as behavior and equivalence (based on languages), weak and strong congruence (based on bisimulation), and composition. We also address the act of composing a number of simple primitive constraint automata into a complex composite one, by discussing two alternative composition approaches and by analyzing their performance in a number of experiments.

Additional Metadata
Keywords Composition, Constraint automata, Coordination, Performance, Reo
Persistent URL dx.doi.org/10.1016/j.scico.2017.03.006
Journal Science of Computer Programming
Project Detection and Diagnosis of Deviations in Distributed Systems of Autonomous Agents
Grant This work was funded by the CWI PPS samenwerking; grant id pps/27-001447 - Detection and Diagnosis of Deviations in Distributed Systems of Autonomous Agents
Citation
Jongmans, S.-S.T.Q, Kappé, T.W.J, & Arbab, F. (2017). Constraint automata with memory cells and their composition. Science of Computer Programming, 146, 50–86. doi:10.1016/j.scico.2017.03.006