Write a Blog >>

Programmers can use gradual types to migrate programs to have more precise type annotations and thereby improve their readability, efficiency, and safety. Such migration requires an exploration of the migration space and can benefit from tool support, as shown in previous work. Our goal is to provide a foundation for better tool support by settling decidability questions about migration with gradual types. We present three algorithms and a hardness result for deciding key properties and we explain how they can be useful during an exploration. In particular, we show how to decide whether the migration space is finite, whether it has a top element, and whether it is a singleton. We also show that deciding whether it has a maximal element is NP-hard. Our implementation of our algorithms worked as expected on a suite of microbenchmarks.

What is Decidable about Gradual Types? (proceedings-version-with-badges.pdf)483KiB
(POPL_slides (1).pdf)269KiB

Wed 22 Jan

Displayed time zone: Saskatchewan, Central America change

14:00 - 15:05
Gradual Typing / Language DesignResearch Papers at Ile de France III (IDF III)
Chair(s): Jeremy G. Siek Indiana University, USA
14:00
21m
Talk
What is Decidable about Gradual Types?
Research Papers
Zeina Migeed University of California, Los Angeles, Jens Palsberg University of California, Los Angeles
Link to publication DOI Media Attached File Attached
14:21
21m
Talk
Graduality and Parametricity: Together Again for the First Time
Research Papers
Max S. New Northeastern University, Dustin Jamner Northeastern University, USA, Amal Ahmed Northeastern University, USA
Link to publication DOI Media Attached
14:43
21m
Talk
Does Blame Shifting Work?
Research Papers
Lukas Lazarek Northwestern University, Alexis King Northwestern University, Samanvitha Sundar Northwestern University, Robert Bruce Findler Northwestern University, USA, Christos Dimoulas PLT @ Northwestern University
Link to publication DOI Media Attached