Jane Street
Tech Talks

September 26, 2019

Unboxing Types for OCaml

Stephen Dolan
Jane Street

OCaml has a well-deserved reputation for compiling quickly. This is thanks in part to its uniform representation: all values have the same memory layout, so generic code does not need to be specialized and recompiled for each use.

This uniformity has a downside: some programs waste a lot of time converting back and forth to this uniform representation.

In this talk, I’ll describe some work-in-progress to remove this overhead, by extending OCaml’s type system to allow other memory layouts, giving the programmer more fine-grained control over how code is compiled.

Stephen Dolan

Stephen is a programming languages researcher and OCaml core developer who's recently joined Jane Street's Tools and Compilers team. Prior to that, he worked at OCaml Labs, did a PhD on subtyping, and wrote jq. His hobbies include hiking, cooking, and writing about himself in the third person.