This program is tentative and subject to change.

OxCaml extends the OCaml type system with \emph{modes} for safe low-level systems programming. For example, OxCaml’s modal \emph{portability} and \emph{contention} axes ensure data-race freedom. In practice, however, modal tracking can reject programs that are obviously safe, such as when the data shared across threads is immutable. To remedy this problem, we introduce \emph{mode crossing}—the ability to automatically strengthen modes (e.g., from nonportable to portable) for values of certain types. Mode crossing significantly reduces the annotation burden associated with modal types. To support mode crossing in the presence of abstract type specifications, we further introduce a new type system feature, \emph{modal kinds}.

We present a type-theoretic account of modal kinds, interpret them as monotone functions on a lattice of modes, and extend this interpretation to recursive and abstract types. We verify soundness in Rocq on top of Iris. We design an inference procedure that reduces kind checking and subsumption to constraints solved by a dedicated lattice solver. Our design is implemented in the OxCaml compiler and deployed in a large industrial codebase, demonstrating practical usability.

This program is tentative and subject to change.

Tue 25 Aug

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

13:30 - 15:00
Memory Models, Garbage Collection, and ConcurrencyICFP Papers at IP126 Auditorium
Chair(s): Mae Milano Princeton University
13:30
18m
Talk
Tail Modulo Async-AwaitRemote
ICFP Papers
Emma Nardino École Normale Supérieure de Lyon / LIP, Ludovic Henrio University of Lyon - ENS Lyon - UCBL - CNRS - Inria - LIP, Gabriel Radanne Inria, Yannick Zakowski Inria
Pre-print
13:48
18m
Talk
Set-Theoretic Types for Erlang in PracticeRemote
ICFP Papers
Albert Schimpf University of Kaiserslautern-Landau, Annette Bieniusa RPTU Kaiserslautern-Landau
14:06
18m
Talk
Mode Crossing
ICFP Papers
Benjamin Peters MPI-SWS, Jules Jacobs Jane Street, Diana Kalinichenko Jane Street, Liam Stevenson Jane Street, Aspen Smith Jane Street, Derek Dreyer MPI-SWS, Richard A. Eisenberg Jane Street
14:24
18m
Talk
A Separation Logic for Parallel Time Complexity with Work and Span Credits
ICFP Papers
Alexandre Moine New York University, Sam Westrick New York University, Joseph Tassarotti New York University
Pre-print
14:42
18m
Talk
LoCalMem: Type-Directed Adaptive Serialization for Location- and Content-Addressable Memory
ICFP Papers
Michael Rainey Carnegie Mellon University, Michael Borkowski Purdue University, Michael Vollmer University of Kent, Chaitanya S. Koparkar Indiana University, Mikah Kainen Purdue University, Vidush Singhal Purdue University
DOI Pre-print