@MISC{Hamilton95extendingfirst, author = {G.W. Hamilton and St Bg}, title = {Extending First Order Deforestation}, year = {1995} }
Bookmark
OpenURL
Abstract
Intermediate data structures are widely used in functional programs. Programs which use these intermediate structures are usually much easier to understand, but they result in loss of efficiency at run-time. In order to reduce these run-time costs, a transformation algorithm called deforestation was proposed by Wadler to eliminate intermediate structures. However, the set of expressions for which this algorithm is guaranteed to terminate is only a subset of all first-order functional expressions. In this paper, it is shown how the deforestation algorithm can be generalised so that it will be guaranteed to terminate for all first-order functional expressions. It is then shown how this generalised algorithm can be extended to allow more intermediate data structures to be eliminated. i Contents 1 Introduction 1 2 Language 2 2.1 Syntax : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 2 2.2 Semantics : : : : : : : : : : : : : : : : : : : : : ...