On the design and implementation of Modular Explicitsin-person
We present and discuss the design and implementation of \emph {modular explicits}, an extension of \OCaml first-class modules with \emph {module-dependent functions}, functions taking first-class modules as arguments. We show some difficulties with the present use of first-class modules and how modular explicits solve them in a simpler, more direct way. Modular explicits are fully compatible with, and can be presented as an extension of, first-class modules. Interestingly, both the formalization and the implementation reuse the mechanism designed to ensure principal types in the presence of semi-explicit first-class polymorphism and \OCaml polymorphic methods. Modular explicits are also meant to be the underlying language in which \emph {modular implicits}, \ie module arguments left implicit from their signatures, should be elaborated.
Paper (ocaml2024-final11.pdf) | 316KiB |
Sat 7 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
09:00 - 10:30 | OCaml compiler features and optimizationsOCaml at Orange 2 Chair(s): Stephen Dolan Jane Street Live stream: https://www.youtube.com/watch?v=OuQqblCxJ2Y | ||
09:00 22mTalk | On the design and implementation of Modular Explicitsin-person OCaml File Attached | ||
09:22 22mTalk | Flambda2 Validatorin-person OCaml File Attached | ||
09:45 22mTalk | A Non-allocating Optionin-person OCaml Richard A. Eisenberg Jane Street File Attached | ||
10:07 22mTalk | Mixed Blocks: Storing More Fields Flatin-person OCaml Nicholas Roberts Jane Street File Attached |