Professor GRAHAM HUTTON GRAHAM.HUTTON@NOTTINGHAM.AC.UK
PROFESSOR OF COMPUTER SCIENCE
Professor GRAHAM HUTTON GRAHAM.HUTTON@NOTTINGHAM.AC.UK
PROFESSOR OF COMPUTER SCIENCE
Patrick Bahr
Fifty years ago, John McCarthy and James Painter (1967) published the first paper on compiler verification, in which they showed how to formally prove the correctness of a compiler that translates arithmetic expressions into code for a register-based machine. In this article, we revisit this example in a modern context, and show how such a compiler can now be calculated directly from a specification of its correctness using simple equational reasoning techniques.
Hutton, G., & Bahr, P. (2017). Compiling a 50-year journey. Journal of Functional Programming, 27, Article e20. https://doi.org/10.1017/S0956796817000120
Journal Article Type | Article |
---|---|
Acceptance Date | Aug 22, 2017 |
Publication Date | Sep 20, 2017 |
Deposit Date | Oct 4, 2017 |
Publicly Available Date | Oct 4, 2017 |
Journal | Journal of Functional Programming |
Print ISSN | 0956-7968 |
Electronic ISSN | 1469-7653 |
Publisher | Cambridge University Press |
Peer Reviewed | Peer Reviewed |
Volume | 27 |
Article Number | e20 |
DOI | https://doi.org/10.1017/S0956796817000120 |
Public URL | https://nottingham-repository.worktribe.com/output/883824 |
Publisher URL | https://www.cambridge.org/core/journals/journal-of-functional-programming/article/compiling-a-50year-journey/31A66593E940CEF13253C34714F78041 |
Related Public URLs | http://www.cs.nott.ac.uk/~pszgmh/fifty.pdf |
Additional Information | This article has been published in a revised form in Journal of Functional Programming http://doi.org/Journal of Functional Programming. This version is free to view and download for private research and study only. Not for re-distribution, re-sale or use in derivative works. © Cambridge University Press 2017 |
Contract Date | Oct 4, 2017 |
fifty.pdf
(115 Kb)
PDF
Quotient Haskell: Lightweight Quotient Types for All
(2024)
Journal Article
Programming language semantics: It’s easy as 1,2,3
(2023)
Journal Article
Monadic compiler calculation (functional pearl)
(2022)
Journal Article
Calculating dependently-typed compilers (functional pearl)
(2021)
Journal Article
Calculating correct compilers II: Return of the register machines
(2020)
Journal Article
About Repository@Nottingham
Administrator e-mail: discovery-access-systems@nottingham.ac.uk
This application uses the following open-source libraries:
Apache License Version 2.0 (http://www.apache.org/licenses/)
Apache License Version 2.0 (http://www.apache.org/licenses/)
SIL OFL 1.1 (http://scripts.sil.org/OFL)
MIT License (http://opensource.org/licenses/mit-license.html)
CC BY 3.0 ( http://creativecommons.org/licenses/by/3.0/)
Powered by Worktribe © 2025
Advanced Search