The Java language lacks the important notions of ownership (an object owns its representation to prevent unwanted aliasing) and immutability (the division into mutable, immutable,...
Yoav Zibin, Alex Potanin, Paley Li, Mahmood Ali, M...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and enables optimizations. This paper presents Immutability Generic Java (IGJ), a n...
Yoav Zibin, Alex Potanin, Mahmood Ali, Shay Artzi,...
We propose a mechanism for object access control which is based on the UML. Specifically, we propose use of ownership and immutability constraints on UML associations and verifica...
We present a type system for checking object immutability, read-only references, and class immutability in an open or closed world. To allow object initialization outside object co...
This paper describes a type system that is capable of expressing and enforcing immutability constraints. The speonstraint expressed is that the abstract state of the object to whi...