Abstract
Sleepers, a high-level control mechanism, have already been embedded in different programming languages — Pascal, C, Common Lisp. In this paper we discuss their employment in a logic programming framework. Sleepers are computational entities enabling to use an enriched communication strategy among the living predicates of a Prolog computation, i.e. those present in the run-time stack. These sleepers provide a high-level access to the history of the computation. Simple operational semantics of our sleeper-extension of Prolog is given. Two illustrations of the power of this control mechanism are presented: the implementation of Contextual Logic Programming and the meta-programming of Finite Domains constraints.
Preview
Unable to display preview. Download preview PDF.
References
V. Loia and M. Quaggetto. High level management of computation history for the design and implementation of a Prolog system. Sofware-Practice and Experiences, Vol. 23, Num. 2, pp. 119–150, 1993.
V. A. Saraswat. Concurrent Constraint Programming, MIT Press, 1993.
L. Monteiro and A. Porto. Contextual Logic Programming. In 6th International Conference on Logic Programming, pp. 284–299, 1989. newblock MIT Press, 1989.
P. Van Hentenryck. Constraint Satisfaction in Logic Programming, MIT Press, 1989.
P.J. Cortois. On the time and space decomposition of complex structures. Communications of the ACM, vol. 2, Num. 6, pp. 590–603, June 1985.
P. Maes. Computational Reflexion. TR-87-2, V.U.B. AI-LAB, 1987.
D.H.D. Warren. An Abstract Prolog Instruction Set. Technical Report 309, SRI International, 1983.
R. O'Keefe. Towards an Algebra for Constructing Logic Programs. 1985 Symposium on Logic Programming, IEEE Computer Society Press
D. Miller. A theory of modules for logic programming. In 1986 International Symposium on Logic Programming, pp. 106–114, 1986.
E. Lamma, P. Melllo, and G. Rossi. Parametric Composable Modules in a Logic programming language. Computer Languages, Vol. 18, Num. 2, pp. 105–123, 1993.
J. Jaffar and J.L. Lassez. Constraint Logic Programming. In Principles Of Programming Languages, Munich, 1987.
A. Colmerauer. An introduction to Prolog-III. Communications of the ACM, 33 (7), July 1990.
A. K. Macworth. Consistency in Networks of Relations. Artificial Intelligence, 8 (1977).
P. Van Hentenryck, V. Saraswat and Y. Deville. Constraint processing in cc(FD). Draft, 1991.
D. Diaz and P. Codognet. A minimal extension of the WAM for clp(fd). In International Conference on Logic Programming, Budapest, 1993
M. Carlsson. Freeze, indexing and other issues on the WAM. In 4th International Conference on Logic Programming, Melbourne, Australia, MIT Press 1987.
P. Codognet, F. Fages and T. Sola. A metalevel compiler of CLP(FD) and its combination with IB. In Constraint Logic Programming: Selected Research, F. Benhamou and A. Colmerauer (Eds.), MIT Press 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Codognet, C., Codognet, P., Loia, V., Quaggetto, M. (1994). Sleepers: a versatile high-level control mechanism. In: Hermenegildo, M., Penjam, J. (eds) Programming Language Implementation and Logic Programming. PLILP 1994. Lecture Notes in Computer Science, vol 844. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58402-1_22
Download citation
DOI: https://doi.org/10.1007/3-540-58402-1_22
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58402-5
Online ISBN: 978-3-540-48695-4
eBook Packages: Springer Book Archive