Scala 2016
Sun 30 - Mon 31 October 2016 Amsterdam, Netherlands
co-located with SPLASH 2016

Concurrent programming is infamous for its difficulty. An important source of difficulty is non-determinism, stemming from unpredictable interleavings of concurrent activities. Futures and promises are widely-used abstractions that help designing deterministic concurrent programs, although this property cannot be guaranteed statically in mainstream programming languages. Deterministic-by-construction concurrent programming models avoid this issue, but they typically restrict expressiveness in important ways.

This paper introduces a concurrent programming model, Reactive Async, which decouples concurrent computations using so-called cells, shared locations which generalize futures as well as recent deterministic abstractions such as LVars. Compared to previously
proposed programming models Reactive Async provides (a) a fallback mechanism for the case where no computation ever computes the value of a given cell, and (b) explicit and optimized handling of cyclic dependencies. We present a complete implementation of the Reactive Async programming model as a library in Scala. Finally, the paper reports on a case study applying Reactive Async to static analyses of JVM bytecode based on the Opal framework.

Mon 31 Oct

Displayed 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
25m
Talk
Practical Aggregate Programming in Scala
Scala
Roberto Casadei University of Bologna, Italy
Media Attached
10:55
25m
Talk
DynaML: A Scala machine learning environment
Scala
Mandar Chandorkar Centrum Wiskunde & Informatica
11:20
25m
Talk
Scala-Gopher: CSP-style programming techniques with idiomatic Scala.
Scala
Media Attached
11:45
25m
Talk
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