Compiling Functional Types to Relational Specifications for Low Level Imperative Code

  • Nick Benton ,
  • Nicolas Tabareau

Proceedings of the Fourth ACM SIGPLAN Workshop on Types in Language Design and Implementation |

Published by Association for Computing Machinery, Inc.

Publication

We describe a semantic type soundness result, formalized in the Coq proof assistant, for a compiler from a simple functional language into an idealized assembly language. Types in the high level language are interpreted as binary relations, built using both second-order quantification and separation, over stores and values in the low-level machine.