APICe » Publications » Protelis: Practical Aggregate Programming

Protelis: Practical Aggregate Programming

Danilo Pianini, Mirko Viroli, Jacob Beal
The notion of a computational field has been proposed as a unifying abstraction for developing distributed systems, focusing on the computations and coordination of aggregates of devices instead of individual behavior. Prior field-based languages, however, have suffered from a number of practical limitations that have posed barriers to adoption and use. We address these limitations by introduction of Protelis, a functional language based on computational fields and embedded in Java, thereby enabling the construction of widely reusable components of aggregate systems. We demonstrate the simplicity of Protelis integration and programming through two examples: simulation of a pervasive computing scenario in the Alchemist simulator, and coordinated management of a network of services.
Proceedings of the 30th Annual {ACM} Symposium on Applied Computing, Salamanca, Spain, April 13-17, 2015, pages 1846--1853, 2015.
Roger L. Wainwright, Juan Manuel Corchado, Alessio Bechini, Jiman Hong (eds.), ACM, Salamanca, Spain
@proceedings{ProtelisSAC14,
  booktitle = {Proceedings of the 30th Annual {ACM} Symposium on Applied Computing, Salamanca, Spain, April 13-17, 2015},
  pages     = {1846--1853},
  year      = {2015},
	venue_list = {--},
	publisher = {ACM},
	author = {Pianini, Danilo AND Viroli, Mirko AND Beal, Jacob},
	title = {Protelis: Practical Aggregate Programming},
  editor    = {Wainwright, Roger L. and Corchado, Juan Manuel and Bechini, Alessio and Hong, Jiman},
  url       = {http://doi.acm.org/10.1145/2695664.2695913},
  doi       = {10.1145/2695664.2695913},
  timestamp = {Tue, 21 Jul 2015 21:17:02 +0200},
  isbn      = {978-1-4503-3196-8},
	abstract = {The notion of a computational field has been proposed as a unifying abstraction for developing distributed systems, focusing on the computations and coordination of aggregates of devices instead of individual behavior. Prior field-based languages, however, have suffered from a number of practical limitations that have posed barriers to adoption and use. We address these limitations by introduction of Protelis, a functional language based on computational fields and embedded in Java, thereby enabling the construction of widely reusable components of aggregate systems. We demonstrate the simplicity of Protelis integration and programming through two examples: simulation of a pervasive computing scenario in the Alchemist simulator, and coordinated management of a network of services.},
	address = {Salamanca, Spain},
	venue_e = {Events.Sac2015}}