ICFP 2023
Mon 4 - Sat 9 September 2023 Seattle, Washington, United States
Fri 8 Sep 2023 09:00 - 09:30 at Grand Crescent - ML Workshop: Session 1 Chair(s): Jacques Garrigue

Resource management deals with various aspects of reasoning about the state of a program. The C++/Rust programming model puts to the fore the concept of destructor as a central programming feature for resource management.

Building upon an idealised understanding of the concept of destructor and resource types, it is possible to integrate resources as a language feature for ML. To make the feature first-class, some notion of resource polymorphism is needed. One goal is to better integrate functional programming with systems and parallel programming. In this talk, I will in particular focus on how one can mix GC and linear allocation with re-use as memory management strategies in the same language.

This talk is based on a proposal to extend ML with first-class resources [1]. It circulated widely at the time; however it has not yet been presented to the ICFP audience. This talk comes back on this proposal and highlights what is new (still today) and what are some of its challenges.

[1]: Resource Polymorphism, 2018, https://arxiv.org/abs/1803.02796

Fri 8 Sep

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

09:00 - 10:30
09:00
30m
Talk
Resource polymorphism: proposal for integrating first-class resources into MLRemote
Higher-order, Typed, Inferred, Strict: ML Family Workshop
09:30
30m
Talk
Modernizing Standard ML of New Jersey: A Status Report
Higher-order, Typed, Inferred, Strict: ML Family Workshop
David MacQueen University of Chicago (Emeritus), John Reppy University of Chicago, USA
10:00
30m
Talk
Semi-explicit polymorphic parameters
Higher-order, Typed, Inferred, Strict: ML Family Workshop
Leo White Jane Street