Title: Towards an Empirical Study of Affine Types for Isolated Actors in Scala,
Abstract: 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.