2019
DOI: 10.1145/3290328
|View full text |Cite
|
Sign up to set email alerts
|

Gradual type theory

Abstract: We present gradual type theory, a logic and type theory for call-by-name gradual typing. We define the central constructions of gradual typing (the dynamic type, type casts and type error) in a novel way, by universal properties relative to new judgments for gradual type and term dynamism. These dynamism judgments build on prior work in blame calculi and on the "gradual guarantee" theorem of gradual typing. Combined with the ordinary extensionality (η) principles that type theory provides, we show that most of… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
12
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
5
3

Relationship

3
5

Authors

Journals

citations
Cited by 19 publications
(12 citation statements)
references
References 58 publications
0
12
0
Order By: Relevance
“…Our analysis of graduality as observational approximation and dynamism as ep pairs builds on the axiomatic and denotational semantics of graduality for a call-by-name language presented in [New and Licata 2018]. The semantics there gives axioms of type and term dynamism that imply that upcasts and downcasts are embedding-projection pairs.…”
Section: Related Work and Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…Our analysis of graduality as observational approximation and dynamism as ep pairs builds on the axiomatic and denotational semantics of graduality for a call-by-name language presented in [New and Licata 2018]. The semantics there gives axioms of type and term dynamism that imply that upcasts and downcasts are embedding-projection pairs.…”
Section: Related Work and Discussionmentioning
confidence: 99%
“…Using the ep pairs, we provide a more semantic formulation and proof of graduality. First, we use our analysis of type dynamism as denoting ep pairs to define graduality as a kind of observational error approximation up to upcast/downcast, building on the axiomatic semantics of graduality in New and Licata [2018]. We then prove the graduality theorem using our logical relation for error approximation.…”
Section: Introductionmentioning
confidence: 99%
“…In this section we prove the central metatheoretic results of the paper: that our surface language satisfies both graduality and parametricity theorems. Each of these is considered a technical challenge to prove: parametricity is typically proven by a logical relation and graduality is proven either by a simulation argument [Siek et al 2015] or a logical relation [New and Ahmed 2018;New et al 2019], so in the worst case this would require two highly technical developments. However, we show that this is not necessary: the logical relations proof for graduality is general enough that the parametricity theorem is a corollary of the reflexivity of the logical relation.…”
Section: Graduality and Parametricitymentioning
confidence: 99%
“…However, adding recursive types is part of our future work so that we would be able to describe more precisely cases of the like. Recursive types have been addressed previously in gradual typing implementations [9,25,12,13], and in semantics formulations [20,15]. We plan on building on this body of work.…”
Section: Related Work and (More) Future Workmentioning
confidence: 99%