FM2024Top-tier venue
Extending Isabelle/HOL's Code Generator with Support for the Go Programming Language
Terru Stübinger, Lars Hupel
Abstract
Abstract The Isabelle proof assistant includes a small functional language, which allows users to write and reason about programs. So far, these programs could be extracted into a number of functional languages: Standard ML, OCaml, Scala, and Haskell. This work adds support for Go as a fifth target language for the Code Generator. Unlike the previous targets, Go is not a functional language and encourages code in an imperative style, thus many of the features of Isabelle’s language (particularly data types, pattern matching, and type classes) have to be emulated using imperative language constructs in Go. The developed Code Generation is provided as an add-on library that can be simply imported into existing theories.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Builds on2
Related papers
- Extensible Metatheory Mechanization via Family PolymorphismEnde Jin, Nada Amin, Yizhou ZhangPLDI 2023 · 10 citations
- Type Inference LogicsDenis Carnier, François Pottier, Steven KeuchelOOPSLA 2024 · 3 citations
- A Minimalist Proof Language for Neural Theorem Proving over Isabelle/HOLQiyuan Xu, Renxi Wang, Peixin Wang, Haonan Li et al.OOPSLA 2026
- Dependent type systems as macrosStephen Chang, Michael Ballantyne, Milo Turner, William J. BowmanPOPL 2020 · 8 citations
- BiSikkel: A Multimode Logical Framework in AgdaJoris Ceulemans, Andreas Nuyts, Dominique DevriesePOPL 2025
