Improving memory utilization in transforming recursive programs

Extended abstract
  • Alberto Pettorossi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 64)


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.


Recursion Equation Denotational Semantic Finite Lattice Correctness Problem Recursive Program 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [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. [2]
    Darlington, J. and R.M. Burstall "A System which Automatically Improves Programs" Acta Informatica Vol.6 pp.41–60 (1976)CrossRefGoogle Scholar
  3. [3]
    Schwarz, J. "Using Annotations to Make Recursion Equations Behave" D.A.I. Research Report No.43 Edinburgh University (Sept. 77)Google Scholar
  4. [4]
    Stoy, J. "Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory" The M.I.T. Press (1977)Google Scholar
  5. [5]
    Tennent, R.D. "The Denotational Semantics of Programming Languages" C.A.C.M. Vol. 19 No.8 (Aug 76)Google Scholar
  6. [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

Copyright information

© Springer-Verlag Berlin Heidelberg 1978

Authors and Affiliations

  • Alberto Pettorossi
    • 1
  1. 1.CSSCCA-CNRRomaItaly

Personalised recommendations