Modular Polymorphic Defunctionalization
Computer Science and Information Systems, Tome 11 (2014) no. 4

Voir la notice de l'article provenant de la source Computer Science and Information Systems website

Defunctionalization is generally considered a whole-program transformation and thus incompatible with separate compilation. In this paper, we formalize a modular variant of defunctionalization which can support separate compilation for a functional programming language with parametric polymorphism. Our technique allows modules in a Haskell-like language to be separately defunctionalized and compiled, then linked together to generate an executable program. We provide a prototype implementation of our modular defunctionalization technique and we discuss the experiences of its application in compiling a large subset of Haskell to low-level C code, based on the intensional transformation.
Keywords: defunctionalization, separate compilation, polymorphism, Haskell
@article{CSIS_2014_11_4_a11,
     author = {Georgios Fourtounis and Nikolaos S. Papaspyrou and Panagiotis Theofilopoulos},
     title = {Modular {Polymorphic} {Defunctionalization}},
     journal = {Computer Science and Information Systems},
     publisher = {mathdoc},
     volume = {11},
     number = {4},
     year = {2014},
     url = {http://geodesic.mathdoc.fr/item/CSIS_2014_11_4_a11/}
}
TY  - JOUR
AU  - Georgios Fourtounis
AU  - Nikolaos S. Papaspyrou
AU  - Panagiotis Theofilopoulos
TI  - Modular Polymorphic Defunctionalization
JO  - Computer Science and Information Systems
PY  - 2014
VL  - 11
IS  - 4
PB  - mathdoc
UR  - http://geodesic.mathdoc.fr/item/CSIS_2014_11_4_a11/
ID  - CSIS_2014_11_4_a11
ER  - 
%0 Journal Article
%A Georgios Fourtounis
%A Nikolaos S. Papaspyrou
%A Panagiotis Theofilopoulos
%T Modular Polymorphic Defunctionalization
%J Computer Science and Information Systems
%D 2014
%V 11
%N 4
%I mathdoc
%U http://geodesic.mathdoc.fr/item/CSIS_2014_11_4_a11/
%F CSIS_2014_11_4_a11
Georgios Fourtounis; Nikolaos S. Papaspyrou; Panagiotis Theofilopoulos. Modular Polymorphic Defunctionalization. Computer Science and Information Systems, Tome 11 (2014) no. 4. http://geodesic.mathdoc.fr/item/CSIS_2014_11_4_a11/