Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages 2016
DOI: 10.1145/2837614.2837632
|View full text |Cite
|
Sign up to set email alerts
|

Abstract: Many languages are beginning to integrate dynamic and static typing. Siek and Taha offered gradual typing as an approach to this integration that provides a coherent and full-span migration between the two disciplines. However, the literature lacks a general methodology for designing gradually typed languages. Our first contribution is to provide a methodology for deriving the gradual type system and the compilation to the cast calculus. Based on this methodology, we present the Gradualizer, an algorithm that … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
25
0

Year Published

2016
2016
2023
2023

Publication Types

Select...
5
4
1

Relationship

0
10

Authors

Journals

citations
Cited by 41 publications
(26 citation statements)
references
References 31 publications
1
25
0
Order By: Relevance
“…Gradual typing is a specific way of combining dynamic and static typing in a single language, intended to create a gradual migration path from untyped to typed codebases. Since it was originally proposed by Siek and Taha [2006], gradual typing has received a lot of attention: gradual extensions have been constructed for many different type systems, the notion of blame was adapted from the world of contracts [Findler and Felleisen 2002] to track the origin of a dynamic cast failure , correctness criteria were studied [Siek et al 2015], the process of constructing a gradually-typed version of a pre-existing type system was to some extent automated [Cimini and Siek 2016;Garcia et al 2016] and last but not least, the entire approach has also been declared dead because of severe performance issues [Takikawa et al 2016].…”
Section: Related Workmentioning
confidence: 99%
“…Gradual typing is a specific way of combining dynamic and static typing in a single language, intended to create a gradual migration path from untyped to typed codebases. Since it was originally proposed by Siek and Taha [2006], gradual typing has received a lot of attention: gradual extensions have been constructed for many different type systems, the notion of blame was adapted from the world of contracts [Findler and Felleisen 2002] to track the origin of a dynamic cast failure , correctness criteria were studied [Siek et al 2015], the process of constructing a gradually-typed version of a pre-existing type system was to some extent automated [Cimini and Siek 2016;Garcia et al 2016] and last but not least, the entire approach has also been declared dead because of severe performance issues [Takikawa et al 2016].…”
Section: Related Workmentioning
confidence: 99%
“…We first introduce a few auxiliary definitions used in typing rules. Figure 9 defines the matching relation T ⊲U (Cimini & Siek, 2016). Roughly speaking, T ⊲ U means that T can be used, after necessary run-time checking, as U.…”
Section: External Language Ggv Ementioning
confidence: 99%
“…Recent work has discovered a systematic procedure for generating a "gradual version" of a standard type system [11]. This system, called the Gradualizer, operates on a logic program that specifies a simple type assignment system with some additional annotations to generate a corresponding specification of a gradual type system.…”
Section: Gradual Type Systemsmentioning
confidence: 99%