Abstract
We describe a technique allowing efficient reconsideration of all the current choice points whenever the garbage collector is activated. It turned out that this extra work usually saves time since the garbage collector will have less structures to consider. Moreover this extra work will be deducted from future work, if the search tree is not pruned. This technique also allows recovery of space in the local stack of the wam, thus making garbage collection of this stack worthwhile.
There is no additional cost in space if a trail with (address,value) pairs is used. The Dynamic revision algorithm can however be implemented with a standard trail if space the same size as the trail contents is made available at garbage collection time.
Preview
Unable to display preview. Download preview PDF.
Bibliography
Bekkers Y., Canet B., Ridoux O., Ungaro L., 1986, A Memory with a Real-Time Garbage Collector for Implementing Logic Programming Languages, Proc. of the third Symposium on Logic Programming Conference, IEEE.
Carlsson M., 1987, “Freeze, Indexing, and Other Implementation Issues in the WAM”, Proc. of the Fourth International Conference on Logic Programming, MIT Press, Lassez J.L. ed.
Colmerauer A., 1982, Prolog, Bases théoriques et développements actuels, dans TSI, vol. 2, n∘4 (AFCET-Bordas), août 1983, avec H. Kanoui et M. Van Caneghem.
Colmerauer A., 1990, An Introduction to Prolog III, Communications of the ACM, july 90, vol 33, n 7, pp 70–90.
Dincbas M., Van Hentenrick P., Simonis H., Aggoun A., Graf T. and Berthier F., 1988, The Constraint Logic Programming Language CHIP, Proceedings of the International Conference on Fifth Generation Computer Systems (FGCS'88),vol 1, Ohmsha Pubishers, Tokyo, pp 693–702.
Jaffar J. and Michaylov S., 1987, Methodology and Implementation of a CLP System, Proc. 4th International Conference on Logic Programming (Melbourne 87), MIT Press, Cambridge, Mass., pp 196–218.
Hickey T., Mudambi S., 1987, Global Compilation of Prolog, Journal of Logic Programming, vol 7, N 3, nov 1989, pp 193–230.
Le Huitouze S., Ridoux O., 1986, Une expérience de réalisation du Gel et du Dif dans MALI, In Actes du Séminaire 1986 —Programmation en Logique, Trégastel, France, CNET, Mai 1986.
Morris F.L., 1978, A Time and Space Efficient Garbage Compaction Algorithm, Communications of the ACM, Vol 21, No 8.
Naish L., 1985, Negation and Control in Prolog, Ph. D. Thesis, Dept of Computer Science, University of Melbourne.
Pique J.F., 1990, Compilation d'un prolog II modulaire, Habilitation à diriger des recherches. Université Aix-Marseille II, Groupe Intelligence Artificielle, Faculté des Sciences de Luminy.
Pique J.F., 1990, Definition of a Prolog Machine with Interrupts, New Computing Techniques in Physics Research, D. Perret-Gallix & W. Wojcik ed., Editions du CNRS, Paris 1990, pp 369–379.
Touraïvane, 1988, Récupération de mémoire dans Prolog III, Thèse de Doctorat en Informatique et Mathématiques, Université d'Aix-Marseille II, Faculté des sciences de Luminy.
Turk A.K., 1986, Compiler Optimizations for the Warn, Proceedings of the Third International Conference on Logic Programming, London, Springer-Verlag, Shapiro E. ed., pp 657–662.
Van Caneghem M., 1986, L'anatomie de Prolog II, InterEditions, Paris.
Warren D.H.D., 1977, Implementing Prolog: Compiling Predicate Logic Programs, Dept. of A.I. Research Reports 39 & 40, Edinburgh, May 77.
Warren D.H.D., 1983, An Abstract Prolog Instruction Set, Technical Note 309, Artificial Intelligence Center, SRI International, Menlo Park, Calif.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pique, J.F. (1992). Dynamic revision of choice points during garbage collection in prolog [II/III]. In: Bekkers, Y., Cohen, J. (eds) Memory Management. IWMM 1992. Lecture Notes in Computer Science, vol 637. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0017199
Download citation
DOI: https://doi.org/10.1007/BFb0017199
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55940-5
Online ISBN: 978-3-540-47315-2
eBook Packages: Springer Book Archive