ECOOP 2015
Sun 5 - Fri 10 July 2015 Prague 1, Czech Republic
Mon 6 Jul 2015 16:30 - 16:50 at Moravia III - Gradual Typing

Siek and Taha (2006) introduce gradual typing as a theory for integrating static and dynamic typing in programming languages. Siek et al. (2015) expand on the goals of gradual typing. The goals are:

  1. support both fully static and fully dynamic typing,
  2. enable gradual migration between static and dynamic regions,
  3. provide sound interoperability between such regions, and
  4. static regions of code are as efficient as they would be in a statically typed language.

In addition to these goals, we add that dynamic regions should perform within a constant factor of the time in dynamically typed languages.

However, there is a tension between enabling interoperability between static and dynamic regions and achieving efficiency, especially in static regions of code. The purpose of our present work is to study the essential efficiency of gradual typing by constructing a prototype compiler in which we can implement approaches to minimizing overheads and carefully evaluate their impact on efficiency through empirical studies. Towards this goal, we give a status report on Schml, a compiler that translates the Gradually Typed Lambda Calculus to C.

Towards Absolutely Efficient Gradually Typed Languages (abstract.pdf)93KiB