CLSWeb Main
Caltech Library System
Electronic Theses
                  About | Browse | Search | Caltech Student Instructions

Gray, Nathaniel Asoka (2005-05-27) High-confidence, modular compiler development in a formal environment. http://resolver.caltech.edu/CaltechETD:etd-05272005-182952


Type of Document Master's Thesis
Author Gray, Nathaniel Asoka
Author's Email Address n8gray AT caltech.edu
URN etd-05272005-182952
Persistent URL http://resolver.caltech.edu/CaltechETD:etd-05272005-182952
Title High-confidence, modular compiler development in a formal environment
Degree Master of Science
Option Computer Science
Advisory Committee
Advisor Name Title
Jason Hickey Committee Chair
Keywords
  • formal compilers
  • formal toolkits
  • meta-prl
  • metaprl
  • theorem provers
  • compilers
  • compiler verification
Date of Defense 2005-05-27
Availability unrestricted
Abstract
We present a methodology for realistic compiler development in an existing formal methods framework. Program transformations and analyses are implemented as term rewrites and inference rules, and automated proof search techniques are used to drive the compilation process. This approach allows the programmer to implement the compiler succinctly, declaratively, and modularly. We explain how our methodology separates trusted code, which can potentially corrupt compilation, from untrusted code, which cannot. We present a case study in which we have used these techniques to implement a compiler for a small ML-like programming language that produces x86 assembly code as output. We give a detailed overview of several stages of the compiler, including type inference, type checking, type erasure, CPS conversion, and closure conversion. We also describe the process of extending the minimal core compiler to include features such as integers, Booleans, operators, tuples, and recursive functions.
Files
  Filename       Size       Approximate Download Time (Hours:Minutes:Seconds) 
 
 28.8 Modem   56K Modem   ISDN (64 Kb)   ISDN (128 Kb)   Higher-speed Access 
  thesis.pdf 405.65 Kb 00:01:52 00:00:57 00:00:50 00:00:25 00:00:02

Browse All Available ETDs by ( Author | Option )

If you have more questions or technical problems, please Contact the Caltech Library System.