Verified Inlining and Specialisation for PureCake
Paper in proceeding, 2024

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.

functional programming

machine-checked proofs

function inlining

loop optimisation

verified compilation

Author

Hrutvik Kanabar

University Of Kent

Kacper Korban

Student at Chalmers

Magnus Myreen

Chalmers, Computer Science and Engineering (Chalmers), Formal methods

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

03029743 (ISSN) 16113349 (eISSN)

Vol. 14577 LNCS 275-301
9783031572661 (ISBN)

33rd European Symposium on Programming, ESOP 2024, held as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2024
Luxembourg City, Luxembourg,

The next 700 verified compilers

Swedish Research Council (VR) (2021-05165), 2022-01-01 -- 2025-12-31.

Subject Categories

Didactics

Economics

Computer Science

Mathematical Analysis

DOI

10.1007/978-3-031-57267-8_11

More information

Latest update

5/22/2024