In lazy functional programming modularity is often achieved by using intermediate data structures to combine separate parts of a program. Each intermediate data structure is produced by one part and consumed by another one. Deforestation optimises a functional program by transformation into a program which does not produce such intermediate data structures. In this thesis we present a new method for deforestation, which combines a known method,short cut deforestation, with a new analysis that is based on type inference. Short cut deforestation eliminates an intermediate list by a single, local transformation. In return, short cut deforestation expects both producer and consumer of the intermediate list in a certain form. Whereas the require...
Software engineering has to reconcile modularity with efficiency. One way to grapple with this dilem...
Functional programmers are strong enthusiasts of modular solutions to programming problems. Since so...
Circular programs are a powerful technique to express multiple traversal algorithms as a single trav...
Deforestation optimises a functional program by transforming it into another one that does not creat...
Deforestation optimises a functional program by transforming it into another one that does not creat...
ii In lazy functional programming modularity is often achieved by using intermediate data structures...
Deforestation optimises a functional program by transforming it into another one that does not creat...
In lazy functional programs a data structure is often used to combine two separate parts of the prog...
Abstract. Deforestation optimises a functional program by transform-ing it into another one that doe...
Functional programming languages are an ideal medium for program optimisations based on source-to-s...
AbstractWadler's deforestation algorithm eliminates intermediate data structures from functional pro...
In functional languages intermediate data structures are often used as glue to connect separate par...
AbstractAn algorithm that transforms programs to eliminate intermediate trees is presented. The algo...
In functional programming, intermediate data structures are often used to “glue’) together small pro...
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...
Functional programmers are strong enthusiasts of modular solutions to programming problems. Since so...
Circular programs are a powerful technique to express multiple traversal algorithms as a single trav...
Deforestation optimises a functional program by transforming it into another one that does not creat...
Deforestation optimises a functional program by transforming it into another one that does not creat...
ii In lazy functional programming modularity is often achieved by using intermediate data structures...
Deforestation optimises a functional program by transforming it into another one that does not creat...
In lazy functional programs a data structure is often used to combine two separate parts of the prog...
Abstract. Deforestation optimises a functional program by transform-ing it into another one that doe...
Functional programming languages are an ideal medium for program optimisations based on source-to-s...
AbstractWadler's deforestation algorithm eliminates intermediate data structures from functional pro...
In functional languages intermediate data structures are often used as glue to connect separate par...
AbstractAn algorithm that transforms programs to eliminate intermediate trees is presented. The algo...
In functional programming, intermediate data structures are often used to “glue’) together small pro...
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...
Functional programmers are strong enthusiasts of modular solutions to programming problems. Since so...
Circular programs are a powerful technique to express multiple traversal algorithms as a single trav...