kirancodes.me
To Proof Maintenance & Beyond!

First-class runtime generation of high-performance types using exotypes

Zachary DeVito, Daniel Ritchie, Matthew Fisher, Alex Aiken, Pat Hanrahan

Abstract

We introduce exotypes, user-defined types that combine the flexibility of meta-object protocols in dynamically-typed languages with the performance control of low-level languages. Like objects in dynamic languages, exotypes are defined programmatically at run-time, allowing behavior based on external data such as a database schema. To achieve high performance, we use staged programming to define the behavior of an exotype during a runtime compilation step and implement exotypes in Terra, a low-level staged programming language.

Related papers