Welcome to the PIP site!

[Participate in the 2024 Workshop at ICLP!]

[2024 Workshop preliminary program published]

[Note: If you have comments please post them at the Prolog Implementers Forum Discourse]

Prolog Improvement Proposals (PIPs) describe important extensions to Prolog that are not (yet) included in the Prolog ISO standards. These extensions may affect the Prolog language itself or they may be implemented as libraries or packages.

While PIPs describe important functionality, they are not standards. Rather they are intended to describe functionality implemented in current Prologs, that a number of Prologs have agreed to support in a common way, rather than to prescribe what all Prologs should do. Each PIP must be supported by at least two Prolog systems. We hope that this requirement will help foster coordination between Prologs in developing new functionality, and in providing common APIs to existing functionality. Of course if a PIP is widely adopted by the Prolog community it can become an excellent candidate for being further developed into an official standard by the appropriate working groups.

For questions about PIPs, see these FAQs. Further questions can be directed to the What is a PIP? discussion topic. Comments, contributions, or questions on individual PIPs should go to the topic corresponding to that PIP in the discussion forum.

For guidelines, see PIP-0001

These are the current PIPs:

PIP # Title Status Location (temporary)
0001 What is a PIP? Draft https://gitlab.software.imdea.org/prolog-lang/implementors-forum
0100 JSON to and from Prolog Draft https://gitlab.software.imdea.org/prolog-lang/pip-janus
0101 Communication between Prolog and Python via Janus Draft https://gitlab.software.imdea.org/prolog-lang/pip-json
0102 Dictionaries in Prolog Draft https://gitlab.software.imdea.org/prolog-lang/pip-0102
0103 Modes and their meaning Draft


The Prolog Implementers Forum is a part of the "All Things Prolog" online Prolog community, an initiative of the Association for Logic Programming stemming from the Year of Prolog activities.