Quantified types in an imperative language

11Citations
Citations of this article
19Readers
Mendeley users who have this article in their library.

Abstract

We describe universal types, existential types, and type constructors in Cyclone, a strongly typed C-like language. We show how the language naturally supports first-class polymorphism and polymorphic recursion while requiring an acceptable amount of explicit type information. More importantly, we consider the soundness of type variables in the presence of C-style mutation and the address-of operator. For polymorphic references, we describe a solution more natural for the C level than the ML-style "value restriction." For existential types, we discover and subsequently avoid a subtle unsoundness issue resulting from the address-of operator. We develop a formal abstract machine and type-safety proof that capture the essence of type variables at the C level. © 2006 ACM.

Cite

CITATION STYLE

APA

Grossman, D. (2006). Quantified types in an imperative language. ACM Transactions on Programming Languages and Systems, 28(3), 429–475. https://doi.org/10.1145/1133651.1133653

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