Memo: an incremental computation library that powers Dune
- đ¤ Speaker: Andrey Mokhov, Jane Street
- đ Date & Time: Thursday 29 June 2023, 15:00 - 16:00
- đ Venue: FW11
Abstract
Abstract: Build systems are used by every software developer on the planet, but they are far from being a solved problem. For years the venerable Make and its variants dominated, but more recently the challenges of scale have driven large software firms to develop their own build systems, such as Google’s Bazel or Meta’s Buck/Buck2. Jane Street is not as large but we are not an exception; in fact, we developed not one but two build systems! The new one, called Dune, is now the standard build tool for the wider OCaml community, and we at Jane Street are working hard on migrating our monorepo with 30+ millions of lines of OCaml code, and various critical systems around it, to Dune.
In this talk, we’ll look into some algorithmic challenges of building software, touching on the topics of incremental computation, graph data structures, and concurrency. We’ll take a look at Dune’s build engine and, in particular, at Memo—the incremental computation library that powers Dune.
Bio: Andrey Mokhov leads Jane Street’s build systems team, trying to keep the build times under control despite the rapidly growing population of software developers. Before joining Jane Street, he was an academic researcher at Newcastle University (UK), working on asynchronous circuits, functional programming, and build systems.
Series This talk is part of the Computer Laboratory Systems Research Group Seminar series.
Included in Lists
- All Talks (aka the CURE list)
- bld31
- Cambridge Centre for Data-Driven Discovery (C2D3)
- Cambridge talks
- Chris Davis' list
- CL's SRG seminar
- Computer Laboratory Systems Research Group Seminar
- Department of Computer Science and Technology talks and seminars
- FW11
- Interested Talks
- ndk22's list
- ob366-ai4er
- rp587
- School of Technology
- Trust & Technology Initiative - interesting events
- yk449
Note: Ex-directory lists are not shown.
![[Talks.cam]](/static/images/talkslogosmall.gif)

Andrey Mokhov, Jane Street
Thursday 29 June 2023, 15:00-16:00