The enduring popularity of dynamically typed languages has motivated research on gradual type systems to allow developers to annotate legacy dynamic code piecemeal. Type soundness for a program that contains a mixture of typed and untyped code cannot mean the traditional absence of errors. While some errors will be caught at type checking time, others can be caught only when the program executes. After a decade of research it is has become difficult to separate and distill the right gradual type systems for each situation and scenario. We introduce a framework for comparing gradual type systems, combining a common source languages with kafka, a calculus for object-oriented gradual typing, decoupling the semantics of gradual typing from those of the language. We demonstrate the usefulness of this approach by translating idealizations of four different gradually typed semantics into the calculus and discuss the implications of their respective choices.
Sun 4 Nov
|13:30 - 13:50|
Benjamin W ChungNortheastern UniversityLink to publication
|14:00 - 14:20|
|14:30 - 14:50|