OCaml 2014

The OCaml Users and Developers Workshop
Gothenburg, Sweden, September 5, 2014
Colocated with ICFP 2014, the day after the ML Family Workshop.


  • September 9, 2014: Add links to slides.
  • September 7, 2014: Links to videos of the talks added to the program.
  • August 24, 2014: Add abstracts to the program.
  • July 4, 2014: preliminary program.
  • May 20, 2014: Extended deadline is Friday May 23, 23:59 UTC-11.
  • May 16, 2014: Precise deadline is May 19, 23:59 UTC-11 (i.e. May 20 10:59 UTC).
  • May 7, 2014: Sent the last CFP. Deadline is May 19!
  • April 24, 2014: The submission site is now open.
  • February 10, 2014: workshop announcement.

The OCaml Users and Developers Workshop brings together industrial users of OCaml with academics and hackers who are working on extending the language, type system and tools. Previous editions have been colocated with ICFP 2012 in Copenhagen, and ICFP 2013 in Boston, following the OCaml Meetings that ran until 2011.


09:00-09:10 - Welcome

09:10-10:00 - Runtime system

Multicore OCaml, by Stephen Dolan, Leo White, Anil Madhavapeddy (University of Cambridge). PDF Abstract, Video.

Ephemerons meet OCaml GC, by François Bobot (CEA). PDF Abstract, Video.

10:25-11:20 - Tools and libraries

Introduction to 0install, by Thomas Leonard (University of Cambridge) . PDF Abstract, PDF Slides, Video.

Transport Layer Security purely in OCaml (*), by Hannes Mehnert (University of Cambridge), David Kaloper Meršinjak (University of Nottingham). PDF Abstract, PDF Slides, Video.

OCamlOScope: a New OCaml API Search (*), by Jun Furuse (Standard Chartered Bank, Singapore). PDF Abstract, PDF Slides, Video.

11:40-12:30 - OCaml News

The State of OCaml (invited), Xavier Leroy (INRIA Paris-Rocquencourt). PDF Slides, Video.

The OCaml Platform v1.0, by Anil Madhavapeddy (C), Amir Chaudhry (C), Jeremie Diminio (JS), Thomas Gazagnaire (C), Louis Gesbert (OCamlPro), Thomas Leonard (C), David Sheets (C), Mark Shinwell (JS), Leo White (C), Jeremy Yallop (C); (C = University of Cambridge, JS = Jane Street). PDF Abstract, PDF Slides, Video.

12:30-14:00 - Lunch

14:00-14:55 - Language

A Proposal for Non-Intrusive Namespaces in OCaml, by Pierrick Couderc (I), Fabrice Le Fessant (I+O), Benjamin Canou (O), Pierre Chambart (O); (I = INRIA, O = OCamlPro). PDF Abstract, PDF Slides, Video.

Improving Type Error Messages in OCaml (*), by Arthur Charguéraud (INRIA & Université Paris Sud). PDF Abstract, PDF Slides, Video.

Github Pull Requests for OCaml development: a field report (*), by Gabriel Scherer (INRIA). Abstract, Slides, Video.

15:10-16:30 - Joint Poster Session (with ML Family workshop)

Irminsule; a branch-consistent distributed library database, by Thomas Gazagnaire (C), Amir Chaudhry (C), Anil Madhavapeddy (C), Richard Mortier (University of Nottingham), David Scott (Citrix System), David Sheets (C), Gregory Tsipenyuk (C), Jon Crowcroft (C); (C = University of Cambridge). PDF Abstract, PDF Slides, Video.

A Case for Multi-Switch Constraints in OPAM, by Fabrice Le Fessant (INRIA). PDF Abstract, PDF Slides, Video.

LibreS3: design, challenges, and steps toward reusable libraries, by Edwin Török (Skylable Ltd.). PDF Abstract, PDF Slides, PDF Poster, Video.

Nullable Type Inference (#), by Michel Mauny and Benoit Vaugon (ENSTA-ParisTech). PDF Abstract, PDF Slides, Video.

16:30-17:50 - Applications

Coq of OCaml, by Guillaume Claret (Université Paris Diderot). PDF Abstract, Video.

High Performance Client-Side Web Programming with SPOC and Js of ocaml (*), by Mathias Bourgoin and Emmmanuel Chailloux (Université Pierre et Marie Curie). PDF Abstract, Video.

Using Preferences to Tame your Package Manager, Roberto Di Cosmo (D+I), Pietro Abate (D), Stefano Zacchiroli (D), Fabrice Le Fessant (I), Louis Gesbert (OCamlPro); (D = Université Paris Diderot, I = INRIA). PDF Abstract, PDF Slides, Video.

Simple, efficient, sound-and-complete combinator parsing for all context-free grammars, using an oracle (*), by Tom Ridge (University of Leicester). PDF Abstract, Slides, Video.

17:50 - Closing


  • (*) short presentation
  • (#) on behalf of the ML Family workshop
  • A Simple and Practical Linear Algebra Library Interface with Static Size Checking, by Akinori Abe and Eijiro Sumii (Tohoku University), will be presented at the ML Family Workshop. PDF Abstract, PDF Slides.


Discussions will focus on the practical aspects of OCaml programming and the nitty gritty of the tool-chain and upcoming improvements and changes. Thus, we aim to solicit talks on all aspects related to improving the use or development of the language and of its programming environment, including, for example:

  • compiler developments, new backends, runtime and architectures
  • practical type system improvements, such as (but not limited to) GADTs, first-class modules, generic programming, or dependent types
  • new library or application releases, and their design rationales
  • tools and infrastructure services, and their enhancements
  • prominent industrial uses of OCaml, or deployments in unusual situations.


It will be an informal meeting, with an online scribe report of the meeting, but no formal proceedings. Slides of presentations will be available online from the workshop homepage. The presentations will likely be recorded, and made available at a later time.

To submit a talk, please register a description of the talk (about 2 pages long) at EasyChair, providing a clear statement of what will be brought by the talk: the problems that are addressed, the technical solutions or methods that are proposed. If you wish to perform a demo or require any special setup, we will do our best to accommodate you.


  • Abstract Submission Deadline: Monday, May 19, 2014
  • Notification to Speakers: Monday, June 30, 2014
  • Workshop: Friday, September 5, 2014

ML family workshop and post-proceedings

The ML family workshop, held on the previous day, deals with general issues of the ML-style programming and type systems, and is seen as more research oriented. Yet there is an overlap with the OCaml workshop, which we are keen to explore, for instance by having a common session. The authors who feel their submission fits both workshops are encouraged to mention it at submission time and/or contact the Program Chairs.

As another form of cooperation, combined post-proceedings of selected papers from the two workshops will be published in the Electronic Proceedings in Theoretical Computer Science series. The Program Committees shall invite interested authors of selected presentations to expand their abstract for inclusion in the proceedings. The submissions would be reviewed according to the standards of the publication.

Program Committee

  • Esther Baruk, LexiFi, France
  • Jacques Garrigue, Nagoya University, Japan (chair)
  • Oleg Kiselyov, Monterey, CA, USA
  • Pierre Letouzey, Universite Paris 7, France
  • Luc Maranget, INRIA Paris-Rocquencourt, France
  • Keisuke Nakano, University of Electro-Communications, Japan
  • Yoann Padioleau, Facebook, USA
  • Andreas Rossberg, Google, Germany
  • Julien Signoles, CEA LIST, France
  • Leo White, University of Cambridge, UK

If you have any questions, please e-mail: Jacques Garrigue <ocaml2014 AT easychair DOT org>