1,075
views
0
recommends
+1 Recommend
1 collections
    4
    shares

      Studying business & IT? Drive your professional career forwards with BCS books - for a 20% discount click here: shop.bcs.org

      scite_
       
      • Record: found
      • Abstract: found
      • Conference Proceedings: found
      Is Open Access

      Program Fusion with Paramorphisms

      Published
      proceedings-article
      ,
      Workshop on Mathematically Structured Functional Programming (MSFP 2006) (MSFP)
      Mathematically Structured Functional Programming
      2 July 2006
      Program Fusion, Deforestation, Paramorphism, Primitive Recursion, Functional Programming
      Bookmark

            Abstract

            The design of programs as the composition of smaller ones is a wide spread approach to programming. In functional programming, this approach raises the necessity of creating a good amount of intermediate data structures with the only aim of passing data from one function to another. Using program fusion techniques, it is possible to eliminate many of those intermediate data structures by an appropriate combination of the codes of the involved functions. In the standard case, no mention to the eliminated data structure remains in the code obtained from fusion. However, there are situations in which parts of that data structure becomes an internal value manipulated by the fused program. This happens, for example, when primitive recursive functions (so-called paramorphisms) are involved. We show, for example, that the result of fusing a primitive recursive function p with another function f may give as result a function that contains calls to f . Moreover, we show that in some cases the result of fusion may be less efficient than the original composition. We also investigate a general recursive version of paramorphism. This study is strongly motivated by the development of a fusion tool for Haskell programs called HFUSION.

            Content

            Author and article information

            Contributors
            Conference
            July 2006
            July 2006
            : 1-16
            Affiliations
            [0001]Instituto de Computación, Universidad de la República

            Julio Herrera y Reissig 565, 11300 Montevideo, Uruguay
            Article
            10.14236/ewic/MSFP2006.6
            2e33b0a6-31d1-4cdb-9050-086d1cc2b781
            © Facundo Domínguez et al. Published by BCS Learning and Development Ltd. Workshop on Mathematically Structured Functional Programming (MSFP 2006), Kuressaare, Estonia

            This work is licensed under a Creative Commons Attribution 4.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/

            Workshop on Mathematically Structured Functional Programming (MSFP 2006)
            MSFP
            Kuressaare, Estonia
            2 July 2006
            Electronic Workshops in Computing (eWiC)
            Mathematically Structured Functional Programming
            History
            Product

            1477-9358 BCS Learning & Development

            Self URI (article page): https://www.scienceopen.com/hosted-document?doi=10.14236/ewic/MSFP2006.6
            Self URI (journal page): https://ewic.bcs.org/
            Categories
            Electronic Workshops in Computing

            Applied computer science,Computer science,Security & Cryptology,Graphics & Multimedia design,General computer science,Human-computer-interaction
            Deforestation,Primitive Recursion,Program Fusion,Functional Programming,Paramorphism

            Comments

            Comment on this article