A Multi-Walk Through the Past, Present and Future of Prolog


Philipp Körner, Michael Beuschel, João Barbosa, Vítor Santos Costa, Verónica Dahl, Manuel V. Hermenegildo, Jose F. Morales, Jan Wielemaker, Daniel Diaz, Salvador Abreu, Giovanni Ciatto

Logic programming and Prolog in particular have a long and fascinating history, intermingled with that of the many disciplines and cross-fertilizations they both resulted from and enabled. A large body of research has been gathered over the last 50 years, supported by many Prolog implementations, many of them actively developed, and new ones keep appearing. This fertile evolution has yielded many gems and inspired many other new languages. Often, the features added by different systems were motivated by the interdisciplinary needs of its community of programmers and implementors, yielding systems that, while sharing the “classic” core language, and, in particular, the main aspects of the ISO-Prolog standard, also depart from each other in several ways. This obviously poses challenges for code portability. The field has also inspired many related, but quite different languages that have created their own communities.
This article aims at integrating and applying the main lessons learned in the process of evolution of Prolog. It is structured into three major parts. Firstly, we overview the evolution of Prolog systems and the community up to the ISO standard, considering both the main historic developments and motivations behind several Prolog implementations, and other logic programming languages influenced by Prolog. Then, we discuss the more active current Prolog implementations after the standard: their visions, goals, commonalities and incompatibilities. Finally, we present some wishes for the future that have stemmed from consulting the community. We also propose future lines along which Prolog might continue to add useful features, interfaces, libraries, and tools, while at the same time improving compatibility between implementations, in order to revert the fragmentation of the community.

(keywords) Prolog, logic programming systems, portability, rationale, evolution, vision.

Theory and Practice of Logic Programming,  2021.

@article{Korner2020HistoryFuturePrologTPLP,
keywords = {Prolog, logic programming systems, portability, rationale, evolution, vision.},
year = 2021,
author = {Körner, Philipp and Beuschel, Michael and Barbosa, João and Costa, Vítor Santos and Dahl, Verónica and Hermenegildo, Manuel V. and Morales, Jose F. and Wielemaker, Jan and Diaz, Daniel and Abreu, Salvador and Ciatto, Giovanni},
venue_j = {Journals.Tplp},
status = {Submitted},
pdf-local = {history-and-future-of-prolog-0.216.0-2021-02-14T191417.pdf},
title = {A Multi-Walk Through the Past, Present and Future of Prolog},
journal = {Theory and Practice of Logic Programming},
venue_list = {--}}

Journals & Series

Tags:

Publication

— authors

Philipp Körner, Michael Beuschel, João Barbosa, Vítor Santos Costa, Verónica Dahl, Manuel V. Hermenegildo, Jose F. Morales, Jan Wielemaker, Daniel Diaz, Salvador Abreu, Giovanni Ciatto

— status

submitted

Venue

— journal

Theory and Practice of Logic Programming

— publication date

2021

BibTeX

— BibTeX ID
Korner2020HistoryFuturePrologTPLP
— BibTeX category
article

Partita IVA: 01131710376 - Copyright © 2008-2021 APICe@DISI Research Group - PRIVACY