Verified Inlining and Specialisation for PureCake

Published: 01 Jan 2024, Last Modified: 03 Apr 2025ESOP (2) 2024EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Inlining is a crucial optimisation when compiling functional programming languages. This paper describes how we have implemented and verified function inlining and loop specialisation for PureCake, a verified compiler for a Haskell-like (purely functional, lazy) programming language. A novel aspect of our formalisation is that we justify inlining by pushing and pulling -bindings. All of our work has been mechanised in the HOL4 interactive theorem prover.
Loading