Ownership types: A survey

D Clarke, J Östlund, I Sergey, T Wrigstad - Aliasing in object-oriented …, 2013 - Springer
Ownership types were devised nearly 15 years ago to provide a stronger notion of protection
to object-oriented programming languages. Rather than simply protecting the fields of an …

Deny capabilities for safe, fast actors

S Clebsch, S Drossopoulou, S Blessing… - Proceedings of the 5th …, 2015 - dl.acm.org
Combining the actor-model with shared memory for performance is efficient but can
introduce data-races. Existing approaches to static data-race freedom are based on …

Uniqueness and reference immutability for safe parallelism

CS Gordon, MJ Parkinson, J Parsons… - ACM SIGPLAN …, 2012 - dl.acm.org
A key challenge for concurrent programming is that side-effects (memory operations) in one
thread can affect the behavior of another thread. In this paper, we present a type system to …

A lightweight formalism for reference lifetimes and borrowing in Rust

DJ Pearce - ACM Transactions on Programming Languages and …, 2021 - dl.acm.org
Rust is a relatively new programming language that has gained significant traction since its
v1. 0 release in 2015. Rust aims to be a systems language that competes with C/C++. A …

A grounded conceptual model for ownership types in Rust

W Crichton, G Gray, S Krishnamurthi - Proceedings of the ACM on …, 2023 - dl.acm.org
Programmers learning Rust struggle to understand ownership types, Rust's core mechanism
for ensuring memory safety without garbage collection. This paper describes our attempt to …

Modular session types for distributed object-oriented programming

SJ Gay, VT Vasconcelos, A Ravara, N Gesbert… - ACM Sigplan …, 2010 - dl.acm.org
Session types allow communication protocols to be specified type-theoretically so that
protocol implementations can be verified by static type-checking. We extend previous work …

Ownership and immutability in generic Java

Y Zibin, A Potanin, P Li, M Ali, MD Ernst - ACM Sigplan Notices, 2010 - dl.acm.org
The Java language lacks the important notions of ownership (an object owns its
representation to prevent unwanted aliasing) and immutability (the division into mutable …

Minimal ownership for active objects

D Clarke, T Wrigstad, J Östlund, EB Johnsen - … Languages and Systems …, 2008 - Springer
Active objects offer a structured approach to concurrency, encapsulating both unshared
state and a thread of control. For efficient data transfer, data should be passed by reference …

Immutability

A Potanin, J Östlund, Y Zibin, MD Ernst - Aliasing in object-oriented …, 2013 - Springer
One of the main reasons aliasing has to be controlled, as highlighted in another chapter [1]
of this book [2], is the possibility that a variable can unexpectedly change its value without …

Loci: Simple Thread-Locality for Java

T Wrigstad, F Pizlo, F Meawad, L Zhao… - ECOOP 2009–Object …, 2009 - Springer
This paper presents a simple type system for thread-local data in Java. Classes and types
are annotated to express thread-locality and unintended leaks are detected at compile-time …