Aggregate programming is a novel paradigm that addresses, at the core, many issues commonly found in the development of large-scale, situated, self-adaptive systems. It is a particular macro-programming approach where a developer expresses the behaviour of the system at the aggregate-level, by targeting the distributed computational machine which is given by the entire set of (possibly mobile and heterogeneous) networked devices pervading the environment. It is the model that takes care of turning a system-level behaviour specification into the concrete, device-centric programs executed locally by each component.
Aggregate computing is formally grounded in the field calculus, a minimal functional language that works with computational fields, i.e., distributed data structures mapping devices (digital representatives of space-time portions) to computational objects. Fields are a useful unifying abstraction for drawing a connection between the physical and the computational world, and between the local and global programming viewpoints. This approach is compositional, allowing to define layers of building blocks of increasing abstraction, and is also amenable to formal analyses.
In this talk, I will present scafi (SCAla with computational FIels), an aggregate computing framework for the Scala programming language which provides (i) an internal DSL for expressing aggregate computations as well as (ii) a library support for the configuration and execution of aggregate systems. There is no need to learn ad-hoc external DSLs anymore: with scafi, Scala programmers can instantaneously start playing with this new, intriguing development approach!
Mon 31 OctDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 12:10 | Reactive, Concurrent, Distributed Computation | ParsingScala at Matterhorn 2 Chair(s): Sébastien Doeraene EPFL, Switzerland | ||
10:30 25mTalk | Practical Aggregate Programming in Scala Scala Roberto Casadei University of Bologna, Italy Media Attached | ||
10:55 25mTalk | DynaML: A Scala machine learning environment Scala Mandar Chandorkar Centrum Wiskunde & Informatica | ||
11:20 25mTalk | Scala-Gopher: CSP-style programming techniques with idiomatic Scala. Scala Ruslan Shevchenko vertamedia Media Attached | ||
11:45 25mTalk | Reactive Async: Expressive Deterministic Concurrency Scala Philipp Haller KTH Royal Institute of Technology, Simon Geries KTH Royal Institute of Technology, Sweden, Michael Eichberg TU Darmstadt, Germany, Guido Salvaneschi TU Darmstadt, Germany DOI Pre-print Media Attached |