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.
Preview
Unable to display preview. Download preview PDF.
References
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)
Darlington, J. and R.M. Burstall "A System which Automatically Improves Programs" Acta Informatica Vol.6 pp.41–60 (1976)
Schwarz, J. "Using Annotations to Make Recursion Equations Behave" D.A.I. Research Report No.43 Edinburgh University (Sept. 77)
Stoy, J. "Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory" The M.I.T. Press (1977)
Tennent, R.D. "The Denotational Semantics of Programming Languages" C.A.C.M. Vol. 19 No.8 (Aug 76)
Pettorossi, A. "A Method for Improving Memory Utilization in Recursive Programming" Report of Istituto di Automatica. Rome Univ. Italy (to be published).
Author information
Authors and Affiliations
Editor information
Rights 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