
About this episode
Stephen Dolan works on Jane Street’s Tools and Compilers team where he focuses on the OCaml compiler. In this episode, Stephen and Ron take a trip down memory lane, discussing how to manage computer memory efficiently and safely. They consider trade-offs between reference counting and garbage collection, the surprising gains achieved by prefetching, and how new language features like local allocation and unboxed types could give OCaml users more control over their memory.
You can find the transcript for this episode on our website.
Some links to topics that came up in the discussion:
- Stephen’s command-line JSON processor, jq
- Stephen’s Cambridge dissertation, “Algebraic Subtyping”, and a protoype implementation of mlsub, a language based on those ideas.
- A post from Stephen on how to benchmark different memory allocators.
- A Jane Street tech talk on “Unboxed Types for OCaml”, and an RFC in the OCaml RFC repo.
- A paper from Stephen and KC Sivaramakrishnan called “Bounding Data Races in Space and Time”, which is all about a new and better memory model for Multicore OCaml.
- Another paper describing the design of OCaml’s multicore GC.
- The Rust RFC for Higher-ranked trait bounds.
Get every episode summarized
Each time Signals and Threads publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.
Email me new episodesFree for 3 shows. No card needed.
Hosts & guests
No transcript yet
This episode has not been transcribed. Request it and it moves to the front of the queue.
More episodes
More from Signals and Threads

Wrestling the world into rows with Eric Mannes
Signals and Threads

Building a data warehouse from scratch with Jacob Baskin
Signals and Threads

The Network as a Program with Nate Foster
Signals and Threads

Why Testing is Hard and How to Fix it with Will Wilson
Signals and Threads