Gradual typing with union and intersection types

45Citations
Citations of this article
26Readers
Mendeley users who have this article in their library.

Abstract

We propose a type system for functional languages with gradual types and set-theoretic type connectives and prove its soundness. In particular, we show how to lift the definition of the domain and result type of an application from non-gradual types to gradual ones and likewise for the subtyping relation. We also show that deciding subtyping for gradual types can be reduced in linear time to deciding subtyping for non-gradual types and that the same holds true for all subtyping-related decision problems that must be solved for type inference. More generally, this work not only enriches gradual type systems with unions and intersections and with the type precision that arise from their use, but also proposes and advocates a new style of gradual types programming where union and intersection types are used by programmers to instruct the system to perform fewer dynamic checks.

Cite

CITATION STYLE

APA

Castagna, G., & Lanvin, V. (2017). Gradual typing with union and intersection types. Proceedings of the ACM on Programming Languages, 1(ICFP). https://doi.org/10.1145/3110285

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free