Defunctionalization with Dependent Types

Yulong Huang,Jeremy Yallop
2023-04-10
Abstract:The defunctionalization translation that eliminates higher-order functions from programs forms a key part of many compilers. However, defunctionalization for dependently-typed languages has not been formally studied. We present the first formally-specified defunctionalization translation for a dependently-typed language and establish key metatheoretical properties such as soundness and type preservation. The translation is suitable for incorporation into type-preserving compilers for dependently-typed languages
Programming Languages
What problem does this paper attempt to address?