2011 | OriginalPaper | Chapter
Theory and Practice of Fusion
Authors : Ralf Hinze, Thomas Harper, Daniel W. H. James
Published in: Implementation and Application of Functional Languages
Publisher: Springer Berlin Heidelberg
Activate our intelligent search to find suitable subject content or patents.
Select sections of text to find matching patents with Artificial Intelligence. powered by
Select sections of text to find additional relevant content using AI-assisted search. powered by
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.