In functional programming, intermediate data structures are often used to “glue’) together small programs. Deforestation is a program transformation to remove these intermediate data structures automatically. We present a simple algorithm for deforestation based on two fusion rules for hylomorphism, an expressive recursion pattern. A generic notation for hylo-morphisms is introduced, where natural transformations are explicitly factored out, and it is used to represent programs. Our method successfully eliminates intermediate data struc-tures of any algebraic type from a much larger class of compositional functional programs than previous techniques.
Deforestation optimises a functional program by transforming it into another one that does not creat...
Abstract. Deforestation is a well-known program transformation tech-nique which eliminates intermedi...
We compare transformations for the elimination of intermediate results in rst-order functional pro...
In functional programming, intermediate data structures are often used to “glue’) together small pro...
In lazy functional programs a data structure is often used to combine two separate parts of the prog...
ii In lazy functional programming modularity is often achieved by using intermediate data structures...
In functional programming, small programs are often glued together to construct a complex program. P...
In functional languages intermediate data structures are often used as glue to connect separate part...
Software engineering has to reconcile modularity with efficiency. One way to grapple with this dilem...
Abstract. Deforestation optimises a functional program by transform-ing it into another one that doe...
AbstractWadler's deforestation algorithm eliminates intermediate data structures from functional pro...
Deforestation optimises a functional program by transforming it into another one that does not creat...
Functional programming languages are an ideal medium for program optimisations based on source-to-s...
In lazy functional programming modularity is often achieved by using intermediate data structures to...
Projet OSCARThe deforestation of a functional program is a transformation which gets rid ofintermedi...
Deforestation optimises a functional program by transforming it into another one that does not creat...
Abstract. Deforestation is a well-known program transformation tech-nique which eliminates intermedi...
We compare transformations for the elimination of intermediate results in rst-order functional pro...
In functional programming, intermediate data structures are often used to “glue’) together small pro...
In lazy functional programs a data structure is often used to combine two separate parts of the prog...
ii In lazy functional programming modularity is often achieved by using intermediate data structures...
In functional programming, small programs are often glued together to construct a complex program. P...
In functional languages intermediate data structures are often used as glue to connect separate part...
Software engineering has to reconcile modularity with efficiency. One way to grapple with this dilem...
Abstract. Deforestation optimises a functional program by transform-ing it into another one that doe...
AbstractWadler's deforestation algorithm eliminates intermediate data structures from functional pro...
Deforestation optimises a functional program by transforming it into another one that does not creat...
Functional programming languages are an ideal medium for program optimisations based on source-to-s...
In lazy functional programming modularity is often achieved by using intermediate data structures to...
Projet OSCARThe deforestation of a functional program is a transformation which gets rid ofintermedi...
Deforestation optimises a functional program by transforming it into another one that does not creat...
Abstract. Deforestation is a well-known program transformation tech-nique which eliminates intermedi...
We compare transformations for the elimination of intermediate results in rst-order functional pro...