Reference immutability is a type based technique for taming mutation that has long been studied in the context of object-oriented languages, like Java. Recently, though, languages like Scala have blurred the lines between functional programming languages and object oriented programming languages. We explore how reference immutability interacts with features commonly found in these hybrid languages, in particular with higher-order functions -- polymorphism -- and subtyping. We construct a calculus System F-sub-M which encodes a reference immutability system as a simple extension of F-sub and prove that it satisfies the standard soundness and immutability safety properties.Comment: 25 page
AbstractThe Hindley/Milner discipline for polymorphic type inference in functional programming langu...
Type systems usually characterize the shape of values but not their free variables. However, many de...
Polymorphism is an important language feature, allowing generic code to operate on many different ty...
Reference mutability is a type-based technique for controlling mutation that has been thoroughly stu...
Reference immutability type systems such as Javari and ReIm ensure that a given reference cannot be ...
This paper describes a programming language, Javari, that is capable of expressing and enforcing imm...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
MEng thesisThis paper describes a programming language, Javari, that is capable of expressing and en...
Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Compute...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
It is common for Object-Oriented programs to contain mutable and immutable classes. Immutable class...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
We present an imperative object calculus where types are annotated with qualifiers for aliasing and ...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
Contains fulltext : 34651.pdf (preprint version ) (Open Access)We extend a Java-li...
AbstractThe Hindley/Milner discipline for polymorphic type inference in functional programming langu...
Type systems usually characterize the shape of values but not their free variables. However, many de...
Polymorphism is an important language feature, allowing generic code to operate on many different ty...
Reference mutability is a type-based technique for controlling mutation that has been thoroughly stu...
Reference immutability type systems such as Javari and ReIm ensure that a given reference cannot be ...
This paper describes a programming language, Javari, that is capable of expressing and enforcing imm...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
MEng thesisThis paper describes a programming language, Javari, that is capable of expressing and en...
Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Compute...
A compiler-checked immutability guarantee provides useful documentation, facilitates reasoning, and ...
It is common for Object-Oriented programs to contain mutable and immutable classes. Immutable class...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
We present an imperative object calculus where types are annotated with qualifiers for aliasing and ...
A compiler-checked immutability guarantee provides useful doc-umentation, facilitates reasoning, and...
Contains fulltext : 34651.pdf (preprint version ) (Open Access)We extend a Java-li...
AbstractThe Hindley/Milner discipline for polymorphic type inference in functional programming langu...
Type systems usually characterize the shape of values but not their free variables. However, many de...
Polymorphism is an important language feature, allowing generic code to operate on many different ty...