License: Creative Commons Attribution 3.0 Unported license (CC BY 3.0)
When quoting this document, please refer to the following
DOI: 10.4230/OASIcs.SLATE.2013.39
URN: urn:nbn:de:0030-drops-40294
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2013/4029/
Go to the corresponding OASIcs Volume Portal


Fourtounis, Georgios ; Papaspyrou, Nikolaos S.

Supporting Separate Compilation in a Defunctionalizing Compiler

pdf-format:
4.pdf (0.4 MB)


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.

BibTeX - Entry

@InProceedings{fourtounis_et_al:OASIcs:2013:4029,
  author =	{Georgios Fourtounis and Nikolaos S.  Papaspyrou},
  title =	{{Supporting Separate Compilation in a Defunctionalizing Compiler}},
  booktitle =	{2nd Symposium on Languages, Applications and Technologies},
  pages =	{39--49},
  series =	{OpenAccess Series in Informatics (OASIcs)},
  ISBN =	{978-3-939897-52-1},
  ISSN =	{2190-6807},
  year =	{2013},
  volume =	{29},
  editor =	{Jos{\'e} Paulo Leal and Ricardo Rocha and Alberto Sim{\~o}es},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{http://drops.dagstuhl.de/opus/volltexte/2013/4029},
  URN =		{urn:nbn:de:0030-drops-40294},
  doi =		{10.4230/OASIcs.SLATE.2013.39},
  annote =	{Keywords: Defunctionalization, functional programming, modules, separate compilation}
}

Keywords: Defunctionalization, functional programming, modules, separate compilation
Collection: 2nd Symposium on Languages, Applications and Technologies
Issue Date: 2013
Date of publication: 05.06.2013


DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI