Relational compilation for performance-critical applications: extensible proof-producing translation of functional models into low-level code

C Pit-Claudel, J Philipoom, D Jamner… - Proceedings of the 43rd …, 2022 - dl.acm.org
There are typically two ways to compile and run a purely functional program verified using
an interactive theorem prover (ITP): automatically extracting it to a similar language (typically …

A case for DOT: theoretical foundations for objects with pattern matching and GADT-style reasoning

A Boruch-Gruszecki, R Waśko, Y Xu… - Proceedings of the ACM …, 2022 - dl.acm.org
Many programming languages in the OO tradition now support pattern matching in some
form. Historical examples include Scala and Ceylon, with the more recent additions of Java …

[PDF][PDF] Relational compilation for performance-critical applications

C Pit-Claudel, J Philipoom, D Jamner, A Erbsen… - 2022 - dspace.mit.edu
There are typically two ways to compile and run a purely functional program verified using
an interactive theorem prover (ITP): automatically extracting it to a similar language (typically …

Relational compilation: Functional-to-imperative code generation for performance-critical applications

C Pit-Claudel - 2022 - dspace.mit.edu
Purely functional programs verified using interactive theorem provers typically need to be
translated to run: either by extracting them to a similar language (like Coq to OCaml) or by …

Formal Foundations of Capture Tracking

AS Boruch-Gruszecki - 2024 - infoscience.epfl.ch
Type systems are a device for verifying properties of programs without running them. Many
programming languages used in the industry have always had a type system, while others …

[PDF][PDF] ClémentPit-Claudel

MIT MS, LA Kolodziejski - people.csail.mit.edu
Purely functional programs verified using interactive theorem provers typically need to be
translated to run: either by extracting them to a similar language (like Coq to OCaml) or by …