Skip to main content

Improving memory utilization in transforming recursive programs

Extended abstract

  • Communications
  • Conference paper
  • First Online:
Book cover Mathematical Foundations of Computer Science 1978 (MFCS 1978)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 64))

Abstract

In this paper we present some ideas for improving memory utilization in recursive programs. We give a method for transforming programs into "destructive" ones, in which variable values are discarded (by means of special operations) as soon as they are no longer necessary for computing other values. The corresponding memory cells may then be reused for storing results which will be obtained later on. We first extend the language of first order recursion equations, so that destructive operations may be represented in it, and we introduce its denotational semantics. We then study, under given hypotheses, the correctness problem of destructive programs and consider algorithms and heuristics for making their memory efficiency as high as possible.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Burstall, R.M. and J. Darlington "A Transformation System for Developing Recursive Programs" J.A.C.M. Vol.24 No.1 pp.44–67 (Jan 77)

    Google Scholar 

  2. Darlington, J. and R.M. Burstall "A System which Automatically Improves Programs" Acta Informatica Vol.6 pp.41–60 (1976)

    Article  Google Scholar 

  3. Schwarz, J. "Using Annotations to Make Recursion Equations Behave" D.A.I. Research Report No.43 Edinburgh University (Sept. 77)

    Google Scholar 

  4. Stoy, J. "Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory" The M.I.T. Press (1977)

    Google Scholar 

  5. Tennent, R.D. "The Denotational Semantics of Programming Languages" C.A.C.M. Vol. 19 No.8 (Aug 76)

    Google Scholar 

  6. Pettorossi, A. "A Method for Improving Memory Utilization in Recursive Programming" Report of Istituto di Automatica. Rome Univ. Italy (to be published).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

J. Winkowski

Rights and permissions

Reprints and permissions

Copyright information

© 1978 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pettorossi, A. (1978). Improving memory utilization in transforming recursive programs. In: Winkowski, J. (eds) Mathematical Foundations of Computer Science 1978. MFCS 1978. Lecture Notes in Computer Science, vol 64. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-08921-7_89

Download citation

  • DOI: https://doi.org/10.1007/3-540-08921-7_89

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-08921-6

  • Online ISBN: 978-3-540-35757-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics