We extend a Java-like language with immutability specifications and a static type system for verifying immutability. A class modifier immutable specifies that all class instances are immutable objects. Ownership types specify the depth of object states and enforce encapsulation of representation objects. The type system guarantees that the state of immutable objects does not visibly mutate during a program run. Provided immutability-annotated classes and methods are final, this is true even if immutable classes are composed with untrusted classes that follow Java’s type system, but not our immutability type system
Abstract. Programming in an object-oriented language demands a fine balance between flexibility and ...
Programming in an object-oriented language demands a fine balance between flexibility and control. A...
Object invariants describe the consistency of object-oriented data structures and are central to rea...
Abstract. We extend a Java-like language with immutability specifications and a static type system f...
Contains fulltext : 34651.pdf (preprint version ) (Open Access)We extend a Java-li...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
Abstract. We present a type system for checking object immutability, read-only references, and class...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
This paper describes a programming language, Javari, that is capable of expressing and enforcing imm...
It is common for Object-Oriented programs to contain mutable and immutable classes. Immutable class...
Even though immutability is a desirable property, especially in a multi-threaded environment, implem...
Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Compute...
MEng thesisThis paper describes a programming language, Javari, that is capable of expressing and en...
Abstract. Programming in an object-oriented language demands a fine balance between flexibility and ...
Programming in an object-oriented language demands a fine balance between flexibility and control. A...
Object invariants describe the consistency of object-oriented data structures and are central to rea...
Abstract. We extend a Java-like language with immutability specifications and a static type system f...
Contains fulltext : 34651.pdf (preprint version ) (Open Access)We extend a Java-li...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
Abstract. We present a type system for checking object immutability, read-only references, and class...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
This paper describes a programming language, Javari, that is capable of expressing and enforcing imm...
It is common for Object-Oriented programs to contain mutable and immutable classes. Immutable class...
Even though immutability is a desirable property, especially in a multi-threaded environment, implem...
Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Compute...
MEng thesisThis paper describes a programming language, Javari, that is capable of expressing and en...
Abstract. Programming in an object-oriented language demands a fine balance between flexibility and ...
Programming in an object-oriented language demands a fine balance between flexibility and control. A...
Object invariants describe the consistency of object-oriented data structures and are central to rea...