OCaml Workshop 2020

2020-08-28
Held virtually

The OCaml Users and Developers Workshop brings together the OCaml community, including users of OCaml in industry, academia, hobbyists, and the free software community.

The meeting is an informal community gathering of users of the language, library authors, and developers, using and extending OCaml in new ways. The meeting will be held online this year.

This workshop was originally planned to take place in Jersey City, New Jersey, USA and was later changed to be held virtually.

30 Mar 2020
Workshop Announcement
29 May 2020
Abstract submission deadline (any timezone)
17 Jul 2020
Author notification
14 Aug 2020
Camera-ready Deadline
28 Aug 2020
OCaml Workshop

All Presentations

Title Authors Resources
A Declarative Syntax Definition for OCaml Luis Eduardo de Souza Amorim, Eelco Visser
A Simple State-Machine Framework for Property-Based Testing in OCaml Jan Midtgaard
AD-OCaml: Algorithmic Differentiation for OCaml Markus Mottl
API Migration: compare transformed Joseph Harrison, Steven Varoumas, Simon Thompson, Reuben Rowe
Irmin v2 Clément Pascutto, Ioana Cristescu, Craig Ferguson, Thomas Gazagnaire, Romain Liautaud
LexiFi Runtime Types Patrik Keller, Marc Lasson
OCaml Under The Hood: SmartPy Sebastien Mondet
OCaml-CI: A Zero-Configuration CI Thomas Leonard, Craig Ferguson, Kate Deplaix, Magnus Skjegstad, Anil Madhavapeddy
Parallelising your OCaml Code with Multicore OCaml Sadiq Jaffer, Sudha Parimala, KC Sivaramakrishnan, Tom Kelly, Anil Madhavapeddy
The ImpFS filesystem Tom Ridge
The Final Pieces of the OCaml Documentation Puzzle Jonathan Ludlam, Gabriel Radanne, Leo White
Types in amber Paul Steckler, Matthew Ryan

Workshop Details

Organising Committee
Ivan Gotovchits, Gemma Gordon, Anil Madhavapeddy, Frédéric Bour, Enzo Crance, Shon Feder, Sonja Heinze, Shakthi Kannan, Flynn Ludlam, Tim McGilchrist, Sebastien Mondet, Sudha Parimala, Tom Ridge, Marcello Seri, Daniel Tornabene, Shiwei Weng
Program Committee
Ivan Gotovchits (CMU, USA), Florian Angeletti (INRIA, France), Chris Casinghino (Draper Laboratory, USA), Catherine Gasnier (Facebook, USA), Rudi Grinberg (OCaml Labs, UK), Oleg Kiselyov (Tohoku University, Japan), Andreas Rossberg (Dfinity Stiftung, Germany), Marcello Seri (University of Groningen, Netherlands), Edwin Torok (Citrix, UK), Leo White (Jane Street, USA), Greta Yorsh (Jane Street, USA), Sarah Zennou (Airbus, France)

Some Videos

A Declarative Syntax Definition for OCaml
In this talk, we present our work on a syntax definition for the OCaml language in the syntax definition formalism SDF3. SDF3 supports the high-level definition of concrete and abstract syntax through declarative disambiguation and definition of c...
A Simple State-Machine Framework for Property-Based Testing in OCaml
Since their inception, state-machine frameworks have proven their worth by finding defects in everything from the underlying AUTOSAR components of Volvo cars to digital invoicing systems. These case studies were carried out with Erlang’s commercia...
AD-OCaml: Algorithmic Differentiation for OCaml
AD-OCaml is a library framework for calculating mathematically exact derivatives and deep power series approximations of almost arbitrary OCaml programs via algorithmic differentiation. Unlike similar frameworks, this includes programs with side e...
API migration: compare transformed
In this talk we describe our experience in using an automatic API-migration strategy dedicated at changing the signatures of OCaml functions, using the Rotor refactoring tool for OCaml. We perform a case study on open source Jane Street libraries ...
Irmin v2
Irmin is an OCaml library for building distributed databases with the same design principles as Git. Existing Git users will find many familiar features: branching/merging, immutable causal history for all changes, and the ability to restore to an...
LexiFi Runtime Types
OCaml programmers make deliberate use of abstract data types for composing safe and reliable software systems. The OCaml compiler relies on the invariants imposed by the type system to produce efficient and compact runtime data representations. Be...