Aliasing is a known source of challenges in the context of imperative object-oriented languages, which have led to important advances in type systems for aliasing control. However, their large-scale adoption has turned out to be a surprisingly difficult challenge. While new language designs show promise, they do not address the need of aliasing control in existing languages.
This paper presents a new approach to isolation and uniqueness in an existing, widely-used language, Scala. The approach is unique in the way it addresses some of the most important obstacles to the adoption of type system extensions for aliasing control. First, adaptation of existing code requires only a minimal set of annotations. Only a single bit of information is required per class. Surprisingly, the paper shows that this information can be provided by the object-capability discipline, widely-used in program security. We formalize our approach as a type system and prove key soundness theorems. The type system is implemented for the full Scala language, providing, for the first time, a sound integration with Scala's local type inference. Finally, we empirically evaluate the conformity of existing Scala open-source code on a corpus of over 75,000 LOC.
Wed 2 NovDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
13:30 - 15:10 | Language Design and Programming Models IOOPSLA at Matterhorn 1 Chair(s): Roberto Ierusalimschy PUC-Rio | ||
13:30 25mTalk | Extensible Access Control with Authorization Contracts OOPSLA Scott Moore Harvard University, Christos Dimoulas Harvard University, Robert Bruce Findler Northwestern University, Matthew Flatt University of Utah, Stephen Chong Harvard University DOI | ||
13:55 25mTalk | Gentrification Gone too Far? Affordable 2nd-Class Values for Fun and (Co-)Effect OOPSLA Leo Osvald , Gregory Essertel , Xilun Wu Purdue University, Lilliam I Gonzalez Alayon Purdue University, Tiark Rompf Purdue University, USA DOI | ||
14:20 25mTalk | Incremental Forest: A DSL for Efficiently Managing Filestores OOPSLA Jonathan DiLorenzo Cornell University, Richard Zhang University of Pennsylvania, Erin Menzies , Kathleen Fisher Tufts University, Nate Foster Cornell University DOI | ||
14:45 25mTalk | LaCasa: Lightweight Affinity and Object Capabilities in Scala OOPSLA DOI Pre-print |