Back to Search
Start Over
An Internalist Approach to Correct-by-Construction Compilers
- Source :
- PPDP
- Publication Year :
- 2018
- Publisher :
- ACM, 2018.
-
Abstract
- In this paper we present a methodology to organize the construction of a correct compiler, taking advantage of the power of full dependently type systems. The basic idea consists in decorating the abstract syntax of languages with their semantics, allowing to express the correctness of the compiler at type level. We show our methodology in a first small example and then explore how it can be promoted to more realistic languages, realizing that our internalistic approach is feasible for defining a correct-by-construction compiler from an imperative language with conditional iteration to a stack based intermediate language. We also show how this methodology can be combined with the externalist approach, compiling from the intermediate language to an assembly-like low level code and separately proving its correctness.
- Subjects :
- Correctness
Computer science
Programming language
Semantics (computer science)
020207 software engineering
0102 computer and information sciences
02 engineering and technology
Type (model theory)
computer.software_genre
01 natural sciences
Imperative programming
Compiler construction
010201 computation theory & mathematics
Abstract syntax
0202 electrical engineering, electronic engineering, information engineering
Code (cryptography)
Compiler
computer
Subjects
Details
- Database :
- OpenAIRE
- Journal :
- Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming
- Accession number :
- edsair.doi...........df0b8f2af7b4a499364b9fccc973c4b5
- Full Text :
- https://doi.org/10.1145/3236950.3236965