Abstract
Logic Programming and the Prolog language have a major role in Computing. Prolog, and its derived languages, have been widely used in a impressive variety of application domains. Thus, a bit of the history of Logic Programming reflects in the history of systems such as Dec-10 Prolog [32], M-Prolog [15], C-Prolog [19], Quintus Prolog [20], SICStus Prolog [6], BIM-Prolog [17], ECLiPSe [1], BinProlog [30], SWI-Prolog [34], CIAO [14], and B-Prolog [35], to mention but a few. I briefly present the evolution of one such system, YAP, and present a personal perspective on the challenges ahead for YAP (and for Logic Programming).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aggoun, A., Chan, D., Dufresne, P., Falvey, E., Grant, H., Herold, A., Macartney, G., Meier, M., Miller, D., Mudambi, S., Perez, B., van Rossum, E., Schimpf, J., Tsahageas, P.A., de Villeneuve, D.H.: ECLiPSe 3.5 User Manual. ECRC (December 1995)
Arnold, D.J., Krauwer, S., Rosner, M., des Tombe, L., Varile, G.B.: The < c,a > ,t framework in eurotra: a theoretically committed notation for mt. In: Proceedings of the 11th conference on Computational linguistics, Morristown, NJ, USA, pp. 297–303. Association for Computational Linguistics (1986)
Beer, J.: Concepts, Design, and Performance Analysis of a Parallel Prolog Machine. LNCS, vol. 404. Springer, Heidelberg (1989)
Bueno, F., Banda, M.G.d.l., Hermenegildo, M.V.: Effectiveness of Abstract Interpretation in Automatic Parallelization: A Case Study in Logic Programming. In: ACM TOPLAS (1998)
Camacho, R.: Learning stage transition rules with Indlog. In: Proceedings of the 4th International Workshop on Inductive Logic Programming GMD-Studien, Gesellschaft fĂ¼r Mathematik und Datenverarbeitung MBH, vol. 237, pp. 273–290 (1994)
Carlsson, M., Widen, J.: SICStus Prolog User’s Manual. Technical report, Swedish Institute of Computer Science, SICS Research Report R88007B (1988)
Castro, L.F., Santos Costa, V.: Understanding Memory Management in Prolog Systems. In: Codognet, P. (ed.) ICLP 2001. LNCS, vol. 2237, pp. 11–26. Springer, Heidelberg (2001)
Chen, W., Warren, D.S.: Query evaluation under the well-founded semantics. In: Proc. of 12th PODS, pp. 168–179 (1993)
Dawson, S., Ramakrishnan, C.R., Ramakrishnan, I.V., Sagonas, K.F., Skiena, S., Swift, T., Warren, D.S.: Unification factoring for efficient execution of logic programs. In: POPL 1995, pp. 247–258. ACM Press, New York (1995)
De Raedt, L., Kimmig, A., Toivonen, H.: ProbLog: A probabilistic Prolog and its application in link discovery. In: Veloso, M. (ed.) IJCAI, pp. 2462–2467 (2007)
Demoen, B., Nguyen, P.-L.: So Many WAM Variations, So Little Time. In: Palamidessi, C., Moniz Pereira, L., Lloyd, J.W., Dahl, V., Furbach, U., Kerber, M., Lau, K.-K., Sagiv, Y., Stuckey, P.J. (eds.) CL 2000. LNCS, vol. 1861, pp. 1240–1254. Springer, Heidelberg (2000)
Filgueiras, M.: A prolog interpreter working with infinite terms. In: Implementations of Prolog, Campbell, pp. 250–258 (1984)
Gupta, G., Pontelli, E., Ali, K., Carlsson, M., Hermenegildo, M.: Parallel Execution of Prolog Programs: A Survey. ACM Transactions on Programming Languages and Systems 23(4), 1–131 (2001)
Hermenegildo, M.V., Bueno, F., Carro, M., LĂ³pez, P., Morales, J.F., Puebla, G.: An overview of the ciao multiparadigm language and program development environment and its design philosophy. In: Degano, P., De Nicola, R., Meseguer, J. (eds.) Concurrency, Graphs and Models. LNCS, vol. 5065, pp. 209–237. Springer, Heidelberg (2008)
Koves, P., Szeredi, P.: Getting the Most Out of Structure-Sharing. SZKI. In: Collection of Papers on Logic Programming (November 1993)
Krall, A.: The vienna abstract machine. The Journal of Logic Programming 1-3 (October 1996)
Mariën, A.: Improving the Compilation of Prolog in the Framework of the Warren Abstract Machine. PhD thesis, Katholiek Universiteit Leuven (September 1993)
Motik, B., Sattler, U., Studer, R.: Query answering for owl-dl with rules. In: McIlraith, S.A., Plexousakis, D., van Harmelen, F. (eds.) ISWC 2004. LNCS, vol. 3298, pp. 549–563. Springer, Heidelberg (2004)
Pereira, F.: C-Prolog 1.5 User Manual. SRI International, Menlo Park (1987)
Quintus Prolog User’s Guide and Reference Manual—Version 6 (April 1986)
Richardson, M., Domingos, P.: Markov logic networks. Machine Learning 62, 107–136 (2006)
Rocha, R., Silva, F., Costa, V.S.: On Applying Or-Parallelism and Tabling to Logic Programs. Theory and Practice of Logic Programming Systems 5(1-2), 161–205 (2005)
Sagonas, K.F., Swift, T., Warren, D.S., Freire, J., Rao, P.: The XSB programmer’s manual. Technical report, State University of New York at Stony Brook (1997), http://xsb.sourceforge.net/
Santos Costa, V.: ImplementaĂ§Ă£o de Prolog. Provas de aptidĂ£o pedagĂ³gica e capacidade cientĂfica, Universidade do Porto (December 1988)
Santos Costa, V.: Optimising bytecode emulation for prolog. In: Nadathur, G. (ed.) PPDP 1999. LNCS, vol. 1702, pp. 261–267. Springer, Heidelberg (1999)
Santos Costa, V., Sagonas, K., Lopes, R.: Demand-driven indexing of prolog clauses. In: Dahl, V., Niemelä, I. (eds.) ICLP 2007. LNCS, vol. 4670, pp. 305–409. Springer, Heidelberg (2007)
Sato, T., Kameya, Y.: Parameter learning of logic programs for symbolic-statistical modeling. Journal of Artificial Intelligence Research 15, 391–454 (2001)
Silva, A.F.d., Santos Costa, V.: Design, implementation, and evaluation of an dynamic compilation framework for the yap system. In: Dahl, V., Niemelä, I. (eds.) ICLP 2007. LNCS, vol. 4670, Springer, Heidelberg (2007)
Srinivasan, A.: The Aleph Manual (2001)
Tarau, P.: BinProlog 4.00 User Guide. Technical Report 95-1, Département d’Informatique, Université de Moncton (February 1995), http://clement.info.umoncton.ca
van Roy, P.: Aquarius Prolog. IEEE Computer (1992)
Warren, D.H.D.: Applied Logic—Its Use and Implementation as a Programming Tool. PhD thesis, Edinburgh University, Available as Technical Note 290, SRI International (1977)
Warren, D.H.D.: An Abstract Prolog Instruction Set. Technical Note 309, SRI International (1983)
Wielemaker, J.: SWI-Prolog 5.1: Reference Manual. SWI, University of Amsterdam, Roetersstraat 15, 1018 WB Amsterdam, The Netherlands (1997-2003)
Zhou, N.-F., Takagi, T., Kazuo, U.: A Matching Tree Oriented Abstract Machine for Prolog. In: Warren, D.H.D., Szeredi, P. (eds.) Proceedings of the Seventh International Conference on Logic Programming, pp. 158–173. MIT Press, Cambridge (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Santos Costa, V. (2008). The Life of a Logic Programming System. In: Garcia de la Banda, M., Pontelli, E. (eds) Logic Programming. ICLP 2008. Lecture Notes in Computer Science, vol 5366. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-89982-2_1
Download citation
DOI: https://doi.org/10.1007/978-3-540-89982-2_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-89981-5
Online ISBN: 978-3-540-89982-2
eBook Packages: Computer ScienceComputer Science (R0)