Thu 15 Sep 2022 11:20 - 11:40 at Štih - Implementation of Functional Languages Chair(s): Matija Pretnar
We propose a new API and implementation for managing garbage collector (GC) roots for the OCaml foreign-function interface (FFI), which offers:
- better performance than existing APIs (local or global roots);
- efficient support for OCaml 5 with a more multicore-friendly design, with per-domain data structures
- a reasoning based on resource-management idioms, enabling an easier FFI for Rust
Our contributions include a C library called Boxroot which is already in use in several OCaml-Rust interfacing libraries.
We believe that this approach generalizes beyond OCaml, to other FFI situations where a language with GC interacts with a language without pervasive GC, especially those that emphasize move semantics for resource handling (typically C++ or Rust); or even to future language explorations in mixing memory management techniques.
Thu 15 SepDisplayed time zone: Belgrade, Bratislava, Budapest, Ljubljana, Prague change
Thu 15 Sep
Displayed time zone: Belgrade, Bratislava, Budapest, Ljubljana, Prague change
11:00 - 12:30 | Implementation of Functional LanguagesML at Štih Chair(s): Matija Pretnar University of Ljubljana, Slovenia | ||
11:00 20mTalk | A New Match Compiler for Standard ML of New Jersey ML David MacQueen University of Chicago (Emeritus) File Attached | ||
11:20 20mTalk | Boxroot, fast movable GC roots for a better FFI ML Pre-print | ||
11:40 20mTalk | Unboxed types for OCaml ML | ||
12:00 20mTalk | What About the Integer Numbers? ML Daan Leijen Microsoft Research Link to publication File Attached |