Electronic Proceedings in Theoretical Computer Science (Apr 2017)

Towards an Empirical Study of Affine Types for Isolated Actors in Scala

  • Philipp Haller,
  • Fredrik Sommar

DOI
https://doi.org/10.4204/EPTCS.246.3
Journal volume & issue
Vol. 246, no. Proc. PLACES 2017
pp. 3 – 9

Abstract

Read online

LaCasa is a type system and programming model to enforce the object capability discipline in Scala, and to provide affine types. One important application of LaCasa's type system is software isolation of concurrent processes. Isolation is important for several reasons including security and data-race freedom. Moreover, LaCasa's affine references enable efficient, by-reference message passing while guaranteeing a "deep-copy" semantics. This deep-copy semantics enables programmers to seamlessly port concurrent programs running on a single machine to distributed programs running on large-scale clusters of machines. This paper presents an integration of LaCasa with actors in Scala, specifically, the Akka actor-based middleware, one of the most widely-used actor systems in industry. The goal of this integration is to statically ensure the isolation of Akka actors. Importantly, we present the results of an empirical study investigating the effort required to use LaCasa's type system in existing open-source Akka-based systems and applications.