Advertisement

A Calculational Fusion System HYLO

  • Y. Onoue
  • Z. Hu
  • H. Iwasaki
  • M. Takeichi
Chapter
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT)

Abstract

Fusion, one of the most useful transformation tactics for deriving efficient programs, is the process whereby separate pieces of programs are fused into a single one, leading to an efficient program without intermediate data structures produced. In this paper, we report our on-going investigation on the design and implementation of an automatic transformation system HYLO which performs fusion transformation in a more systematic and more general way than any other systems. The distinguished point of our system is its calculational feature based on simple application of transformation laws rather than traditional search-based transformations.

Keywords

Program Calculation Fusion Bird-Meertens Formalisms 

References

  1. Bird, R. & de Moor, O. (1994), Relational program derivation and context-free language recognition, in A. Roscoe, ed., ‘A Classical Mind’, Prentice Hall, pp. 17–35.Google Scholar
  2. Burstall, R. & Darlington, J. (1977), ‘A transformation system for developing recursive programs’, Journal of the ACM 24 (1), 44–67.zbMATHMathSciNetCrossRefGoogle Scholar
  3. Chin, W. (1992), Safe fusion of functional expressions, in ‘Proc. Conference on Lisp and Functional Programming’, San Francisco, California.Google Scholar
  4. Fokkinga, M. (1992), Law and Order in Algorithmics, Ph.D thesis, Dept. INF, University of Twente, The Netherlands.Google Scholar
  5. Gill, A., Launchbury, J. & Jones, S. P. (1993), A short cut to deforestation, in ‘Proc. Conference on Functional Programming Languages and Computer Architecture’, Copenhagen, pp. 223–232.CrossRefGoogle Scholar
  6. Hu, Z., Iwasaki, H. & Takeichi, M. (1996a), Caculating accumulations, Technical Report METR 96–03, Faculty of Engineering, University of Tokyo.Google Scholar
  7. Hu, Z., Iwasaki, H. & Takeichi, M. (1996b), Deriving structural hylomorphisms from recursive definitions, in ‘ACM SIGPLAN International Conference on Functional Programming’, ACM Press, Philadelphia, PA, pp. 73–82.CrossRefGoogle Scholar
  8. Hu, Z., Iwasaki, H. & Takeichi, M. (1996c), An extension of the Acid Rain Theorem, in ‘2nd Fuji International Workshop on Functional and Logic Programming’, World Scientific, Shonan, Japan.Google Scholar
  9. Hu, Z., Iwasaki, H., Takeichi, M. & Takano, A. (1997), Tupling calculation eliminates multiple data traversals, in ‘ACM SIGPLAN International Conference on Functional Programming’, ACM Press, Amsterdam, The Netherlands. to appear.Google Scholar
  10. Jones, M. P. (1994), Gofer 2.30a release notes.Google Scholar
  11. Launchbury, J. & Sheard, T. (1995), Warm fusion: Deriving build-catas from recursive definitions, in ‘Proc. Conference on Functional Programming Languages and Computer Architecture’, La Jolla, California, pp. 314–323.Google Scholar
  12. Meijer, E., Fokkinga, M. & Paterson, R. (1991), Functional programming with bananas, lenses, envelopes and barbed wire, in ‘Proc. Conference on Functional Programming Languages and Computer Architecture (LNCS 523)’, Cambridge, Massachuetts, pp. 124–144.CrossRefGoogle Scholar
  13. Pettorossi, A. & Proietti, M. (1993), Rules and strategies for program transformation, in ‘IFIP TC2/WG2.1 State-of-the-Art Report’, LNCS 755, pp. 263–303.Google Scholar
  14. Sheard, T. & Fegaras, L. (1993), A fold for all seasons, in ‘Proc. Conference on Functional Programming Languages and Computer Architecture’, Copenhagen, pp. 233–242.CrossRefGoogle Scholar
  15. Takano, A. & Meijer, E. (1995), Shortcut deforestation in calculational form, in ‘Proc. Conference on Functional Programming Languages and Computer Architecture’, La Jolla, California, pp. 306–313.Google Scholar
  16. Team, T. A. (1996), Glasgow Haskell Compiler User’s Guide ver0.29.Google Scholar
  17. Wadler, P. (1988), Deforestation: Transforming programs to eliminate trees, in ‘Proc. ESOP (LNCS 300)’, pp. 344–358.Google Scholar

Copyright information

© IFIP 1997

Authors and Affiliations

  • Y. Onoue
    • 1
  • Z. Hu
    • 1
  • H. Iwasaki
    • 2
  • M. Takeichi
    • 1
  1. 1.Department of Information EngineeringUniversity of TokyoJapan
  2. 2.Department of Computer Science Tokyo University of Agriculture and TechnologyJapan

Personalised recommendations