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

This proposal describes a presentation to be given at the OCaml’20 workshop. The presentation will cover a new OCaml filesystem, ImpFS, and the related libraries. The filesystem makes use of a B-tree library presented at OCaml’17, and a key-value store presented at ML’19. In addition, there are a number of other support libraries that may be of interest to the community. ImpFS represents a single point in the filesystem design space, but we hope that the libraries we have developed will enable others to build further filesystems with novel features.

An interesting aspect of our libraries is that we have tried to ensure that each component has a clear mathematical semantics. For example, each library is written in a purely-functional style, using a monad, and the concurrency model is simple step-wise interleaving. For performance reasons, and to integrate with external libraries such as FUSE, it is of course possible to support real mutation (of buffers, and the underlying block device, for example), and “real” threads (e.g. by using OCaml’s light-weight thread libraries such as Lwt).

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