From Field-Based Coordination to Aggregate Computing

   page       BibTeX_logo.png   
Mirko Viroli, Jacob Beal, Ferruccio Damiani, Giorgio Audrito, Roberto Casadei, Danilo Pianini
Giovanna Di Marzo Serugendo, Michele Loreti (eds.)
Coordination Models and Languages, chapter 12, pages 252–279
Lecture Notes in Computer Science 10852

Aggregate computing is an emerging approach to the engineering of complex coordination for distributed systems, based on viewing system interactions in terms of information propagating through collectives of devices, rather than in terms of individual devices and their interaction with their peers and environment. The foundation of this approach is the distillation of a number of prior approaches, both formal and pragmatic, proposed under the umbrella of field-based coordination, and culminating into the field calculus, a functional programming model for the specification and composition of collective behaviours with equivalent local and aggregate semantics. This foundation has been elaborated into a layered approach to engineering coordination of complex distributed systems, building up to pragmatic applications through intermediate layers encompassing reusable libraries of provably resilient program components. In this survey, we trace the development and antecedents of field calculus, review the current state of aggregate computing theory and practice, and discuss a roadmap of current research directions that we believe can significantly impact the agenda of coordination models and languages.

origin event
container publication
page_white_acrobattuProlog: Making Prolog Ubiquitous (article in journal, 2013) — Enrico Denti, Andrea Omicini, Roberta Calegari