Skip to main content

Benefits of Hypergraphs for Program Transformation

  • Conference paper
Informatik ’97 Informatik als Innovationsmotor

Part of the book series: Informatik aktuell ((INFORMAT))

  • 170 Accesses

Abstract

Tupling is a transformation tactic which introduces new functions with the property that redundant function calls and multiple traversals of the input tree are avoided. In the area of functional programming the tupling technique is often based on the unfold/fold technique of [1]. For this reason, most of the different techniques require the intervention of the programmer. We present how easily and obviously tupling can be realized fully automatically in the framework of hypergraphs.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R.M. Burstall and J. Darlington. A transformation system for developing recursive programs. Journal of the ACM, 24(1):44–67 1977.

    Article  MathSciNet  MATH  Google Scholar 

  2. W.-N. Chin. Towards an automated tupling strategy. In 3rd ACM Symposium on Partial Evaluation and Semantics—Based Program Manipulation, pages 119–132, Kopenhagen, 1993 ACM Press.

    Google Scholar 

  3. J. Engelfriet and H. Vogler. The translation power of top-down tree-to-graph transducers. Journal of Computer and System Sciences, 49:258–305, 1994.

    Article  MathSciNet  MATH  Google Scholar 

  4. A. Habel. Hyperedge Replacement: Grammars and Languages. Springer—Verlag, LNCS 643, Berlin Heidelberg, 1992.

    MATH  Google Scholar 

  5. B. Hofmann and D. Plump. Implementing term rewriting by jungle evaluation. R.A.I.R.O. Inf. theorique et Applications, 25(5):445-472 1991.

    Google Scholar 

  6. A. Habel and D. Plump. Unification, rewriting, and narrowing on term graphs. Electronic Notes in Theoretical Computer Science, 2, 1995.

    Google Scholar 

  7. G. Huet. Confluent reductions: abstract properties and applications to term rewriting systems. Journal of the ACM, 27:797–821, 1980.

    Article  MathSciNet  MATH  Google Scholar 

  8. J. W. Klop. Term rewriting systems. In Handbook of Logic in Computer Science, Volume 2, pages 1 - 116. Clarendon Press, Oxford, 1992.

    Google Scholar 

  9. A. Molile and H. Vogler. Efficient call-by-value evaluation of primitive recursive program schemes. In M. Takeichi and T. Ida, editors, Functional and Logic Programming. World Scientific Publishing Co. Pte Ltd., 1995.

    Google Scholar 

  10. A. Molile and H. Vogler. Efficient call-by-value evaluation strategy of primitive recursive program schemes. Technical Report 95-13, Universitat Ulm, 1995.

    Google Scholar 

  11. A. Mofile and H. Vogler. Program transformation in the field of hypergraphs. Technical Report to appear, Universitat Ulm, 1997.

    Google Scholar 

  12. D. Plump. Hypergraph rewriting: Critical pairs and undecidability of confluence. In [14]

    Google Scholar 

  13. A. Pettorossi and M. Proietti. Rules and strategies for program transformation. In B. Moller, H. Partsch, and S. Schumann, editors, Formal Program Development, LNCS 755, pages 263–304, 1993.

    Google Scholar 

  14. M.R. Sleep, M.J. Plasmeijer, and M.C.J.D. van Eekelen, editors. Term Graph Rewriting, Theory and Practice. Wiley Prof. Computing, 1993.

    MATH  Google Scholar 

  15. P. Wadler. Efficient compilation of pattern-matching. In The Implementation of Functional Programming Languages, chapter 5. Prentice-Hall International, 1987.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Mößle, A., Vogler, H. (1997). Benefits of Hypergraphs for Program Transformation. In: Jarke, M., Pasedach, K., Pohl, K. (eds) Informatik ’97 Informatik als Innovationsmotor. Informatik aktuell. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-60831-5_77

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-60831-5_77

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63066-1

  • Online ISBN: 978-3-642-60831-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics