Mitchell Pickard
Calculating dependently-typed compilers (functional pearl)
Pickard, Mitchell; Hutton, Graham
Abstract
Compilers are difficult to write, and difficult to get right. Bahr and Hutton recently developed a new technique for calculating compilers directly from specifications of their correctness, which ensures that the resulting compilers are correct-by-construction. To date, however, this technique has only been applicable to source languages that are untyped. In this article, we show that moving to a dependently-typed setting allows us to naturally support typed source languages, ensure that all compilation components are type-safe, and make the resulting calculations easier to mechanically check using a proof assistant.
Citation
Pickard, M., & Hutton, G. (2021). Calculating dependently-typed compilers (functional pearl). Proceedings of the ACM on Programming Languages, 5(ICFP), 1-27. https://doi.org/10.1145/3473587
Journal Article Type | Article |
---|---|
Acceptance Date | Jun 19, 2021 |
Online Publication Date | Aug 18, 2021 |
Publication Date | Aug 18, 2021 |
Deposit Date | Jul 19, 2021 |
Publicly Available Date | Aug 18, 2021 |
Journal | Proceedings of the ACM on Programming Languages |
Electronic ISSN | 2475-1421 |
Publisher | Association for Computing Machinery (ACM) |
Peer Reviewed | Peer Reviewed |
Volume | 5 |
Issue | ICFP |
Article Number | 82 |
Pages | 1-27 |
DOI | https://doi.org/10.1145/3473587 |
Public URL | https://nottingham-repository.worktribe.com/output/5805202 |
Publisher URL | https://dl.acm.org/doi/10.1145/3473587 |
Files
Calculating dependently-typed compilers (functional pearl)
(235 Kb)
PDF
Publisher Licence URL
https://creativecommons.org/licenses/by/4.0/
You might also like
Calculating Compilers Effectively (Functional Pearl)
(2024)
Presentation / Conference Contribution
Beyond Trees: Calculating Graph-Based Compilers (Functional Pearl)
(2024)
Journal Article
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
Downloadable Citations
About Repository@Nottingham
Administrator e-mail: discovery-access-systems@nottingham.ac.uk
This application uses the following open-source libraries:
SheetJS Community Edition
Apache License Version 2.0 (http://www.apache.org/licenses/)
PDF.js
Apache License Version 2.0 (http://www.apache.org/licenses/)
Font Awesome
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