Transient Typechecks are Almost Free

Abstract

Transient gradual typing imposes run-time type tests that typically cause a linear slowdown. This performance impact discourages the use of type annotations because adding types to a program makes the program slower. A virtual machine can employ standard just-in-time optimizations to reduce the overhead of transient checks to near zero. These optimizations can give gradually-typed languages performance comparable to state-of-the-art dynamic languages, so programmers can add types to their code without affecting their programs’ performance.

Authors

Richard Roberts, Stefan Marr, Michael Homer, James Noble

Published in

European Conference on Object-Oriented Programming (ECOOP), 2019

The final copy of this publication is available from the publisher.
Michael Homer — 2019