Supporting Separate Compilation in a Defunctionalizing Compiler

Authors Georgios Fourtounis, Nikolaos S. Papaspyrou



PDF
Thumbnail PDF

File

OASIcs.SLATE.2013.39.pdf
  • Filesize: 447 kB
  • 11 pages

Document Identifiers

Author Details

Georgios Fourtounis
Nikolaos S. Papaspyrou

Cite AsGet BibTex

Georgios Fourtounis and Nikolaos S. Papaspyrou. Supporting Separate Compilation in a Defunctionalizing Compiler. In 2nd Symposium on Languages, Applications and Technologies. Open Access Series in Informatics (OASIcs), Volume 29, pp. 39-49, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2013)
https://doi.org/10.4230/OASIcs.SLATE.2013.39

Abstract

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. 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 a compiler from a large subset of Haskell to low-level C code, based on the intensional transformation.
Keywords
  • Defunctionalization
  • functional programming
  • modules
  • separate compilation

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail