Affiliation:
1. Indiana University, USA
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 generates a gradual type system from a well-formed type system and also generates a compiler to the cast calculus. Our algorithm handles a large class of type systems and generates systems that are correct with respect to the formal criteria of gradual typing. We also report on an implementation of the Gradualizer that takes a type system expressed in lambda-prolog and outputs its gradually typed version and a compiler to the cast calculus in lambda-prolog.
Funder
National Science Foundation
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
31 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Total Type Error Localization and Recovery with Holes;Proceedings of the ACM on Programming Languages;2024-01-05
2. A Declarative Validator for GSOS Languages;Electronic Proceedings in Theoretical Computer Science;2023-04-13
3. Gradual System F;Journal of the ACM;2022-10-28
4. Towards Gradual Multiparty Session Typing;Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering;2022-10-10
5. Two Parametricities Versus Three Universal Types;ACM Transactions on Programming Languages and Systems;2022-09-21