PLDI 2023 (series) / PLDI Research Papers /
PureCake: A Verified Compiler for a Lazy Functional Language
Mon 19 Jun 2023 13:40 - 14:00 at Royal - PLDI: Verification & Proof Assistants Chair(s): Adam Chlipala
We present PureCake, a mechanically-verified compiler for PureLang, a lazy, purely functional programming language with monadic effects. PureLang syntax is Haskell-like and indentation-sensitive, and its constraint-based Hindley-Milner type system guarantees safe execution. We derive sound equational reasoning principles over its operational semantics, dramatically simplifying some proofs. We prove end-to-end correctness for the compilation of PureLang down to machine code—the first such result for any lazy language—by targeting CakeML and composing with its verified compiler. Multiple optimisation passes are necessary to handle realistic lazy idioms effectively. We develop PureCake entirely within the HOL4 interactive theorem prover.
Mon 19 JunDisplayed time zone: Eastern Time (US & Canada) change
Mon 19 Jun
Displayed time zone: Eastern Time (US & Canada) change
13:40 - 15:20 | PLDI: Verification & Proof AssistantsPLDI Research Papers at Royal Chair(s): Adam Chlipala Massachusetts Institute of Technology | ||
13:40 20mTalk | PureCake: A Verified Compiler for a Lazy Functional Language PLDI Research Papers Hrutvik Kanabar University of Kent, Samuel Vivien École Normale Supérieure, PSL & Chalmers University of Technology Sweden, Oskar Abrahamsson Chalmers University of Technology, Sweden, Magnus O. Myreen Chalmers University of Technology, Michael Norrish CSIRO’s Data61; Australian National University, Johannes Åman Pohjola University of New South Wales, Australia, Riccardo Zanetti Chalmers University of Technology, Sweden DOI Pre-print | ||
14:00 20mTalk | Iris-Wasm: Robust and Modular Verification of WebAssembly Programs PLDI Research Papers Xiaojia Rao Imperial College, Aina Linn Georges Aarhus University, Maxime Legoupil Aarhus University, Conrad Watt University of Cambridge, Jean Pichon-Pharabod Aarhus University, Philippa Gardner Imperial College London, Lars Birkedal Aarhus University DOI | ||
14:20 20mTalk | WasmRef-Isabelle: A Verified Monadic Interpreter and Industrial Fuzzing Oracle for WebAssembly PLDI Research Papers Conrad Watt University of Cambridge, Maja Trela University of Cambridge, Peter Lammich The University of Manchester, Florian Märkl DOI | ||
14:40 20mTalk | Merging Inductive Relations PLDI Research Papers Jacob Prinz University of Maryland, College Park, Leonidas Lampropoulos University of Maryland, College Park DOI | ||
15:00 20mTalk | Cakes That Bake Cakes: Dynamic Computation in CakeML PLDI Research Papers Thomas Sewell University of Cambridge, Magnus O. Myreen Chalmers University of Technology, Yong Kiam Tan None, Ramana Kumar None, Alexander Mihajlovic Chalmers University of Technology, Oskar Abrahamsson Chalmers University of Technology, Scott Owens University of Kent, UK DOI |