Write a Blog >>
ICFP 2020
Thu 20 - Fri 28 August 2020
Fri 28 Aug 2020 10:00 - 10:30 at OCaml - Applications Chair(s): Marcello Seri

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 any previous state. It has been extensively used by major software projects over the past few years such as Docker for Mac/Windows, and noticeably through \emph{DataKit}, which powers hundreds of thousands monthly builds on the opam-repository CI contributors may be familiar with.

Irmin v2 adds new accessibility methods to the store: we can now use Irmin from a CLI, or in a browser using irmin-graphql. It also has a new backend, irmin-pack, which is optimised for space usage and is used by the Tezos blockchain. With over 100K users, Tezos demonstrates that, again, Irmin is suitable for production deployment in large systems.

This presentation will start with short overview of Irmin’s architecture. We will then show the new features of Irmin v2, including using Irmin from the command line or from a browser using GraphQL queries. We will present the irmin-pack backend, demonstrating that Irmin is capable of meeting challenging space and consistency constraints. We will conclude by presenting some other fun features, such as ppx_irmin.

Fri 28 Aug

Displayed time zone: Eastern Time (US & Canada) change

09:00 - 11:00
ApplicationsOCaml at OCaml
Chair(s): Marcello Seri Bernoulli Institute for Mathematics, Computer Science and Artificial Intelligence, University of Groningen

Talks about new and existing OCaml applications and libraries.

09:00
30m
Talk
A Simple State-Machine Framework for Property-Based Testing in OCaml
OCaml
Jan Midtgaard University of Southern Denmark
09:30
30m
Talk
The ImpFS filesystem
OCaml
Tom Ridge University of Leicester, UK
10:00
30m
Talk
Irmin v2
OCaml
Clément Pascutto Tarides, Université Paris-Saclay, CNRS, ENS Paris-Saclay, LMF, Ioana Cristescu INRIA, France, Craig Ferguson Tarides, Thomas Gazagnaire Tarides, Romain Liautaud Tarides
10:30
30m
Talk
AD-OCaml: Algorithmic Differentiation for OCaml
OCaml
Markus Mottl Unaffiliated