Strange Loop

The design of JavaScript type systems

In the past 10 years, several type systems have been added to JavaScript. In this talk, we will discuss the factors that influenced the design of these type systems. We will walk through the core features of JS type systems, and see how they differ from more traditional type systems such as Java's. Then, we will see how to implement a JS type checker, and how to use one effectively. We will conclude with some remarks about the future of type systems for dynamic languages.

Dimitris Vardoulakis

Dimitris Vardoulakis


Dimitris is a software engineer at Google. He is the tech lead of Closure Compiler, a JavaScript type checker and optimizer. He received his PhD from Northeastern University in 2012. His research interests include type systems, static analysis, compilers, and developer tools.