Polymorphic type inference and containment
Information and Computation - Semantics of Data Types
A syntactic approach to type soundness
Information and Computation
Intersection types and computational effects
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Types and programming languages
Types and programming languages
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
An Extended Polymorphic Type System for Applicative Languages
MFCS '80 Proceedings of the 9th Symposium on Mathematical Foundations of Computer Science
Towards a theory of type structure
Programming Symposium, Proceedings Colloque sur la Programmation
The subtyping problem for second-order types is undecidable
Information and Computation
Hi-index | 0.00 |
The aim of this paper is to understand the interplay between intersection, universally quantified, and reference types. Putting together the standard typing rules for intersection, universally quantified, and reference types leads to loss of subject reduction. The problem comes from the invariance of the reference type constructor and the rules of intersection and/or universal quantification elimination, which are subsumption rules. We propose a solution in which types have a kind saying whether the type is (or contains in the case of intersection) a reference type or not. Intersection elimination is limited to intersections not containing reference types, and the reference type constructor can only be applied to closed types. The type assignment is shown to be safe, and when restricted to pure λ -calculus, as expressive as the full standard type assignment system with intersection and universally quantified types.