From the OCaml Labs wiki
Jump to: navigation, search

OCaml Labs is a hybrid team of academic researchers, industrial collaborators and individuals motivated to maintain and improve the OCaml Language and promote its wider use.

Within the University of Cambridge[edit]

Core Team[edit]

KC Sivaramakrishnan KC is a post-doctoral Research Associate at the University of Cambridge Computer Lab and Research Fellow at Darwin College, Cambridge. He is interested in the design and implementation of concurrent functional programming languages targeting scalable platforms such as many-core processors and compute clouds. His research spans programming models, compilers, static analysis, schedulers, threading systems, and memory management.

Richard Mortier Mort is a University Lecturer in NetOS, part of the Systems Research Group in the Cambridge University Computer Laboratory. Before Cambridge, he was a lecturer with the Horizon Digital Economy Research Institute at the University of Nottingham School of Computer Science. He has worked on topics from distributed system performance monitoring and debugging, to Internet routing protocols, to real-time media platform design and implementation.

Anil Madhavapeddy Anil is on the engineering staff at Docker and a (currently on sabbatical) University Lecturer in the Systems Group. He founded the OCaml Labs group in 2012 and has moved back and forth from industry and academia over the years, with stints at XenSource, Citrix, Intel, NetApp and the NASA Mars program. It's all tied together by open source code: he leads the MirageOS unikernel project and contributes to Docker, Xen, OpenBSD, OCaml and many other codebases.

Gemma Gordon Gemma helps manage the day-to-day running of OCaml Labs within the Systems Research Group. This can include anything from arranging the Compiler Hacking evenings and other events, helping align collaborative projects, to making our interns feel at home during their visit. Before working at the University, she co-founded a tech company based in Cambridge, working with industrial partners and users alike.

Student Interns[edit]

Enguerrand Decorne Enguerrand is a student undertaking his internship at OCaml Labs for 6 months in 2016. His internship is centered around interfacing OCaml to C programs by using Ctypes. His primary goal is to bind ocaml-tls to C and provide an interface similar to the one used by libtls from the LibreSSL project. He also works on web development and writing unikernel (see Canopy)

Romain Calascibetta Romain is a student at Epitech, and is undertaking his internship at OCaml Labs for 6 months in the spring and summer of 2016. The main purpose of this internship is to create a Unikernel to send and receive an email. He is interested in the compiler construction, type-system, and he likes to implement many standards in OCaml specifically.

Olivier Nicole Olivier is a student from ENSTA who is working on Macros for OCaml, one of our Pioneer Projects.

Armaël Guéneau Armaël visited us from ENS Lyon, and his internship at OCaml Labs lasted 5 months in 2015. He started by working on quasi-linear types/permissions for OCaml, and then moved onto JS multicore CPS, and algebraic effects with KC.

Philip Dexter Philip is visiting the lab for 3 months in the summer of 2016 to work on creating a reasoning system for approximate computations in OCaml. The system offers static error bounds and confidence intervals for computations for which a programmer can tolerate approximation. This builds on his research at Binghamton University.

Visiting Academics[edit]

Qi Li After studying at ENSTA, Qi interned at OCaml Labs to work on OCamlot and CISO, and is working on the UCN Databox project throughout 2016.

Daniel Hillerström Daniel is a researcher at Edinburgh University, and his research interests include semantics and type systems for programming languages, and implementation of programming languages (compilers). In particular, he is interested in how to take advantage of type systems to accelerate and generate efficient, portable programs.

Michele Sevegnani Michele is a research fellow at Glasgow University, and his research focusses on the theory of bigraphs and how to use it to reason about safety, reliability and predictability of location-aware, event-based, software systems, particularly complex systems that are already deployed.

Christophe Troestler Christophe is a Professor in the Numerical Analysis team within the Mathematics Department at UMONS. He spends part of the summer each year in Cambridge with OCL.

Frederic Bour Frederic works on modular implicits, and most recently helped to develop a Reason frontend for Merlin with an Atom/Nuclide integration.

Computer Laboratory Researchers[edit]

Jon Crowcroft Jon is the Marconi Professor of Communications Systems in the Computer Lab, at the University of Cambridge, almost exactly 100 years after Marconi's first transatlantic wireless call, a fellow of Wolfson College and was previously a Professor in the Department of Computer Science University College London.

Ian Leslie Ian is a Professor of Computer Science at the University of Cambridge Computer Laboratory with interests in operating systems, distributed systems, and networks. His research interests have been in computer networks and operating systems - particularly in respect of performance guarantees. More recently I have focused on the use of information systems to reduce energy demand.

Alan Mycroft Alan is Professor of Computing in the Computer Laboratory of Cambridge University; he is also a Fellow at Robinson College and a co-founder of the Raspberry Pi Foundation for which he was also a Trustee 2008-2015. His research interests span an arc from semantic models of programming languages to actually building optimising compilers. A core interest is that of static analysis of programs to extract properties of their run-time behaviour.

Heidi Howard Heidi is studying for her PhD in the Computer Lab, with a focus on fault-tolerance, consistency and consensus in modern distributed systems.

Hannes Mehnert Hannes is a research associate with the REMS project in the lab, and works on the OCaml TLS project with MirageOS.

David Kaloper

Stephen Dolan

Daniel Buenzli Daniel Bünzli has a Master of Science in Computer Science from the École Polytechnique Fédérale de Lausanne (EPFL). He works with OCL by writing computer graphics, infrastructure and codecs libraries for OCaml.

Gregory Tsipenyuk

Industrial Partners[edit]

Inhabited Type[edit]

Inhabited Type build languages and control programs for cloud orchestration.

Spiros Eliopoulos Spiros is collaborating with OCaml Labs on the OCaml web framework.

Jane Street[edit]

Yaron Minsky

Leo White

Mark Shinwell

Thomas Refis


Xavier Leroy

Xavier Clerc


Dave Scott

Thomas Gazagnaire

David Sheets

Thomas Leonard

Mindy Preston

Jeremy Yallop

Magnus Skjegstad

Balraj Singh

Amir Chaudhry

Ian Campbell


Louis Gesbert

Fabrice Le Fessant

Other Academic Institutions[edit]

Nottingham University[edit]

  • Derek McAuley

Queen Mary University of London[edit]

  • Hamed Haddadi