There are a number of approaches for eliminating intermediate data structures in functional programs—this elimination is commonly known as fusion. Existing fusion strategies are built upon various, but related, recursion schemes, such as folds and unfolds. We use the concept of recursive coalgebras as a unifying theoretical and notational framework to explore the foundations of these fusion techniques. We first introduce the calculational properties of recursive coalgebras and demonstrate their use with proofs and derivations in a calculational style, then provide an overview of fusion techniques by bringing them together in this setting. We also showcase these developments with examples in Haskell
Stream Fusion is a system for removing intermediate list data structures from functional programs, i...
Abstract: Short cut fusion improves the efficiency of modularly constructed programs by eliminating ...
Functional programs often combine separate parts using intermediate data structures for communicatin...
There are a number of approaches for eliminating intermediate data structures in functional programs...
There are a number of approaches for eliminating intermediate data structures in functional programs...
In functional languages intermediate data structures are often used as glue to connect separate part...
In functional languages intermediate data structures are often used as glue to connect separate par...
AbstractFusion laws permit to eliminate various of the intermediate data structures that are created...
In functional programming, small programs are often glued together to construct a complex program. P...
Fusion is one of the most important code transformations as it has the potential to substantially op...
We propose a new algorithm for fusion transformation that allows both stacks and accumulating parame...
Short-cut fusion is a program transformation technique that uses a single local transformation - cal...
Fusion is the process of removing intermediate data structures from modularly constructed functional...
Abstract. In functional programming it is common to write programs as com-position of other simpler ...
In functional programming it is common practice to build modular programs by composing functions whe...
Stream Fusion is a system for removing intermediate list data structures from functional programs, i...
Abstract: Short cut fusion improves the efficiency of modularly constructed programs by eliminating ...
Functional programs often combine separate parts using intermediate data structures for communicatin...
There are a number of approaches for eliminating intermediate data structures in functional programs...
There are a number of approaches for eliminating intermediate data structures in functional programs...
In functional languages intermediate data structures are often used as glue to connect separate part...
In functional languages intermediate data structures are often used as glue to connect separate par...
AbstractFusion laws permit to eliminate various of the intermediate data structures that are created...
In functional programming, small programs are often glued together to construct a complex program. P...
Fusion is one of the most important code transformations as it has the potential to substantially op...
We propose a new algorithm for fusion transformation that allows both stacks and accumulating parame...
Short-cut fusion is a program transformation technique that uses a single local transformation - cal...
Fusion is the process of removing intermediate data structures from modularly constructed functional...
Abstract. In functional programming it is common to write programs as com-position of other simpler ...
In functional programming it is common practice to build modular programs by composing functions whe...
Stream Fusion is a system for removing intermediate list data structures from functional programs, i...
Abstract: Short cut fusion improves the efficiency of modularly constructed programs by eliminating ...
Functional programs often combine separate parts using intermediate data structures for communicatin...