ICFP 2024
Mon 2 - Sat 7 September 2024 Milan, Italy

Program generation is a useful approach to eliminating abstraction overhead and improving program performance. MacoCaml is a recent implementation in the OCaml compiler that combines a notion of macros with phase separation and quotation based staging for compile-time code generation. However, MacoCaml does not support module functors, a key abstraction mechanism in OCaml. In this work, we present a language design that combines functors and compile-time code generation. We formalize our design as a source calculus which, after compile-time code generation, elaborates to a core calculus that enforces phase separation between modules and structures living in different phases. We establish desirable properties, including syntactic type soundness of the core calculus, elaboration soundness, and phase distinction. We believe this study lays a foundation for guiding the continued exploration and implementation of the OCaml macro system.

Wed 4 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 12:00
Meta-Programming, Staging, Generic Programming, Partial EvaluationICFP Papers and Events / JFP First Papers at Green 1-2-3
Chair(s): Richard A. Eisenberg Jane Street
10:30
18m
Talk
Staged Compilation with Module Functors
ICFP Papers and Events
Tsung-Ju Chiang University of Toronto, Jeremy Yallop University of Cambridge, Leo White Jane Street, Ningning Xie University of Toronto; Google DeepMind
DOI Pre-print
10:48
18m
Talk
A Safe Low-Level Language for Computer Algebra and Its Formally Verified Compiler
ICFP Papers and Events
Guillaume Melquiond Université Paris-Saclay - CNRS - ENS Paris-Saclay - Inria, Josué Moreau Université Paris-Saclay - CNRS - ENS Paris-Saclay - Inria
DOI
11:06
18m
Talk
Deriving with Derivatives: Optimizing Incremental Fixpoints for Higher-Order Flow Analysis
ICFP Papers and Events
Benjamin Quiring University of Maryland at College Park, David Van Horn University of Maryland
DOI
11:24
18m
Talk
Compiled, Extensible, Multi-language DSLs (Functional Pearl)Functional Pearl
ICFP Papers and Events
Michael Ballantyne Northeastern University, Mitch Gamburg Unaffiliated, Jason Hemann Seton Hall University
DOI Pre-print
11:42
18m
Talk
Knuth–Morris–Pratt illustrated (JFP Functional Pearls )JFP First Paper
JFP First Papers
Cameron Moy Northeastern University
DOI