Abstract
Logic programming (LP) languages aim to free programmers from procedural details such as memory management tasks. One classical, automatic memory management technique in logic programming is to use a heap memory for all the structured terms and rely on backtracking and on a runtime garbage collector to reclaim memory. While efficient implementation of garbage collectors for LP languages can reuse more than 90% heap space, they introduce performance penalties to the execution of a program because the collectors need to temporarily stop the main program to do their job.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Aiken, A., Fahndrich, M., Levien, R.: Better static memory management: Improving region-based analysis of higher-order languages. In: SIGPLAN Conference on Programming Language Design and Implementation, pp. 174–185 (1995)
Cherem, S., Rugina, R.: Region analysis and Transformation for Java. In: Proceedings of the 4th international symposium on Memory management, pp. 85–96. ACM Press, New York (2004)
Grossman, D., Morrisett, G., Jim, T., Hicks, M., Wang, Y., Cheney, J.: Region-based memory management in Cyclone. In: Proceedings of the ACM Conference on Programming Language Design and Implementation, pp. 282–293 (2002)
Henglein, F., Makholm, H., Niss, H.: A direct approach to control-flow sensitive region-based memory management. In: Principles and Practice of Declarative Programming, pp. 175–186 (2001)
Makholm, H., Sagonas, K.: On enabling the WAM with region support. In: Stuckey, P.J. (ed.) ICLP 2002. LNCS, vol. 2401, p. 163. Springer, Heidelberg (2002)
Mazur, N.: Compile-time garbage collection for the declarative language Mercury. PhD thesis, Dept. of Computer Science, Katholieke Universiteit Leuven (May 2004)
Tofte, M., Talpin, J.-P.: Region-based memory management. Information and Computation 132(2), 109–176 (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Phan, Q. (2006). Static Memory Management for Logic Programming Languages. In: Etalle, S., Truszczyński, M. (eds) Logic Programming. ICLP 2006. Lecture Notes in Computer Science, vol 4079. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11799573_51
Download citation
DOI: https://doi.org/10.1007/11799573_51
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-36635-5
Online ISBN: 978-3-540-36636-2
eBook Packages: Computer ScienceComputer Science (R0)