Standards compliance
JIProlog offers a high degree of compliance with official and de facto Prolog standards. This includes:
- ISO/IEC 13211-1:1995(en) Information technology — Programming languages — Prolog — Part 1: General core
- ISO/IEC 13211-1:1995/Cor.1:2007(en) Information technology — Programming languages — Prolog — Part 1: General core TECHNICAL CORRIGENDUM 1
- ISO/IEC 13211-1:1995/Cor.2:2012(en) Information technology — Programming languages — Prolog — Part 1: General core TECHNICAL CORRIGENDUM 2
- work originating from the Prolog Commons initiative.
JIProlog builds are regularly tested with the latest version available of the Prolog conformance suite distributed with Logtalk. The contents of this section are expected to reflect the latest build of JIProlog. We plan on fixing most existing compliance issues in future builds.
Updated for version 4.0.18.1.
JIProlog currently allows setting of user-defined stream properties using a set_stream_property/2
built-in predicate. As a consequence, the standard stream_property/2
predicate will fail instead of throwing a domain error when called with its second argument instantiated to a unknown property.
In general, no type-checking is applied to output arguments (e.g. in the sort/2
and keysort/2
ISO standard predicates).
char_conversion/2
-
set_stream_position/2
(error checking only as stream repositioning is currently not supported) -
char_conversion/2
(JIProlog supports US-ASCII and UTF-8) current_char_conversion/2
The open/4
built-in predicate reposition/1
is checked but ignored as stream repositioning is currently not supported.
The write_term/3
built-in predicate standard options are currently not supported. Use as alternative the write/1-2
, writeq/1-2
, and write_canonical/1
built-in predicates.