Skip to main content

Type-Inference Based Short Cut Deforestation (Nearly) without Inlining

Chitil, Olaf (2000) Type-Inference Based Short Cut Deforestation (Nearly) without Inlining. In: Clack, Chris and Koopman, Pieter, eds. Implementation of Functional Languages, 11th International Workshop, IFL'99 Lochem, The Netherlands, September 7-10, 1999 Selected Papers. LNCS 1868 . pp. 19-35. Springer ISBN 978-3-540-67864-9. E-ISBN 978-3-540-44658-3. (doi:10.1007/10722298) (KAR id:58703)

PDF Publisher pdf
Language: English
Download (261kB) Preview
[thumbnail of withoutInliningFinal.pdf]
Preview
This file may not be suitable for users of assistive technology.
Request an accessible format
Official URL
http://dx.doi.org/10.1007/10722298

Abstract

Deforestation optimises a functional program by transforming it into another one that does not create certain intermediate data structures. Our type-inference based deforestation algorithm performs extensive inlining, but only limited inlining across module boundaries is practically feasible. Therefore we here present a type-inference based algorithm that splits a function denition into a worker denition and a wrapper denition. For deforestation we only need to inline the small wrappers which transfer the required information. We show that we even can deforest denitions of functions that consume their own result with the worker/wrapper scheme, in contrast to the original algorithm with inlining.

Item Type: Conference or workshop item (Paper)
DOI/Identification number: 10.1007/10722298
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Olaf Chitil
Date Deposited: 16 Nov 2016 22:36 UTC
Last Modified: 16 Feb 2021 13:39 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/58703 (The current URI for this page, for reference purposes)
Chitil, Olaf: https://orcid.org/0000-0001-7986-9929
  • Depositors only (login required):