JIProlog - Java Internet Prolog - is a Prolog interpreter, full ISO compliant, pure Java 100% and open source  

JIProlog conforms with the major Prolog interpreters, it is full ISO Prolog compliant and implements the most common and used built-in predicates.

JIProlog, also, adds to Java the power of Logic Programming and the Prolog language. 

JIProlog integrates Prolog and Java languages in a very fashinating way. It allows calling Prolog predicates from Java without dealing with native code (JNI) and allows invoking Java methods from Prolog as they were predicates.

JIProlog comes with a complete API to link Prolog and Java languages from both sides. The API can is composed of three parts: the first one regards the way to invoke Prolog from Java; the second one deals with the techniques to call Java methods from Prolog by implementing custom Prolog built-in predicates in the form of Java classes or by calling Java methods through Java Reflection API; the third one treats the way to link Prolog predicates with tables in an external databases via JDBC.

JIProlog supplies a powerfull Integrated Devopment Environment to edit, consult, run and test Prolog programs and it provides a set of Java classes that forms the JIProlog API. JIPrologAPI allows:

  • calling Prolog Predicates from Java without dealing with native code and JNI;
  • calling Java methods and classes from Prolog without dealing with foreign language interfaces;
  • writing custom Prolog predicates in Java in order to extend the core set of built-in predicates;
  • extendingthe graphical user interface of a Prolog program implementing windows and dialogs in Java as custom predicates;
  • integrating relational databases in Prolog through a JDBC to Prolog bridge, treating tables and views as Prolog predicates.

JIProlog is compliant with:

  • Java 1.5 or later;
  • Android;

JIProlog is released with two license options:

  • Open Source AGPL v3.0
  • Commercial License without AGPL Restrictions


Latest Version

  • Full ISO Prolog compliant
  • Android compliant

Download the latest version

Release Notes

Documentation on our WIKI

Source code available on GitHub