Abstract
We give a translation suitable for compilation of modern module calculi supporting sealing, generativity, translucent signatures, applicative functors, higher-order functors and/or first-class modules. Ours is the first module-compilation translation with a dynamic correctness theorem. The theorem states that the translation produces target terms that are contextually equivalent to the source, in an appropriate sense. A corollary of the theorem is that the translation is fully abstract. Consequently, the translation preserves all abstraction present in the source. In passing, we also show that modules are a definitional extension of the underlying core language. All of our proofs are formalized in Coq.
Author supplied keywords
Cite
CITATION STYLE
Crary, K. (2019). Fully abstract module compilation. Proceedings of the ACM on Programming Languages, 3(POPL). https://doi.org/10.1145/3290323
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.