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 Times are displayed in time zone: Eastern Time (US & Canada) change
09:00 - 11:00: ApplicationsOCaml at OCaml Chair(s): Marcello SeriBernoulli Institute for Mathematics, Computer Science and Artificial Intelligence, University of Groningen Talks about new and existing OCaml applications and libraries. | |||
09:00 - 09:30 Talk | A Simple State-Machine Framework for Property-Based Testing in OCaml OCaml Jan MidtgaardUniversity of Southern Denmark | ||
09:30 - 10:00 Talk | The ImpFS filesystem OCaml Tom RidgeUniversity of Leicester, UK | ||
10:00 - 10:30 Talk | Irmin v2 OCaml Clément PascuttoTarides, Ioana CristescuINRIA, France, Craig FergusonTarides, Thomas GazagnaireTarides, Romain LiautaudTarides | ||
10:30 - 11:00 Talk | AD-OCaml: Algorithmic Differentiation for OCaml OCaml Markus MottlUnaffiliated |