login
Home / Papers / KafKa: Gradual Typing for Objects

KafKa: Gradual Typing for Objects

16 Citations2018
Benjamin Chung, Paley Li, Francesco Zappa Nardelli

This paper shows that four of the most common gradual type systems provide distinct guarantees, and gives a formal framework for comparing gradualtype systems for object-oriented languages.

Abstract

A wide range of gradual type systems have been proposed, providing many languages with the ability to mix typed and untyped code. However, hiding under language details, these gradual type systems embody fundamentally different ideas of what it means to be well-typed. In this paper, we show that four of the most common gradual type systems provide distinct guarantees, and we give a formal framework for comparing gradual type systems for object-oriented languages. First, we show that the different gradual type systems are practically distinguishable via a three-part litmus test. We present a formal framework for defining and comparing gradual type systems. Within this framework, different gradual type systems become translations between a common source and target language, allowing for direct comparison of semantics and guarantees.