ISO-Prolog package

Author(s): The Ciao Development Team.

This package makes the standard ISO-Prolog predicates available by default in the modules that include it. In particular, it includes the modules and packages listed in the Usage and interface box below. Note that this package is also included when loading the Classic Prolog package (either explicitly or implicity by using a module/2 declaration). On the other hand, using this package by itself, i.e.: :- module(..., ..., [iso]). approximates a strictly conforming mode, i.e., a mode which rejects uses of non-ISO features (except for those that are built-in in Ciao, such as the module system).

Also note that library predicates that correspond to those in the ISO-Prolog standard are marked accordingly throughout the manuals, and differences between the Ciao and the prescribed ISO-Prolog behaviours, if any, commented appropriately.

Compliance with ISO is still not complete: currently there are some minor deviations in, e.g., the treatment of characters, the syntax, some of the arithmetic functions, and part of the error system. In particular, the char_conversion/2 directive is not implemented, since Ciao does not (yet) have a character conversion table.

However, as mentioned in ISO-Prolog compliance versus extensibility in the introduction, the intention of the Ciao developers is to progressively complete ISO standard support, as well as adapt to the corrigenda and reasonable extensions of the standard as they appear.

Usage and interface