Back to overview

Ownership, filters and crossing handlers: flexible ownership in dynamic languages

Type of publication Peer-reviewed
Publikationsform Proceedings (peer-reviewed)
Publication date 2012
Author Wernli Erwann, Maerki Pascal, Nierstrasz Oscar,
Project Synchronizing Models and Code
Show all

Proceedings (peer-reviewed)

Title of proceedings Dynamic languages, DLS '12
DOI 10.1145/2384577.2384589

Open Access


Sharing mutable objects can result in broken invariants, exposure of internal details, and other subtle bugs. To prevent such issues, it is important to control accessibility and aliasing of objects. Dynamic Ownership is an effective way to do so, but its owner-as-dominator discipline is too restrictive: objects are either accessible or not. We propose in this paper to control accessibility and aliasing with more flexibility using two mechanisms, filters and crossing handlers. We demonstrate the benefits of the flexibility offered by these mechanisms, and report on the adaptation of a Smalltalk web server with our approach. We conclude that our variant of dynamic ownership is flexible enough to accommodate an existing design, while at the same time constraining it enough to highlight design anomalies.