[ Reference Manual | Alphabetic Index ]

library(iso_light)

ISO Prolog compatibility library (light version)   [more]

Predicates

<(?, ?)
No description available
=:=(?, ?)
No description available
=<(?, ?)
No description available
=\=(?, ?)
No description available
>(?, ?)
No description available
>=(?, ?)
No description available
abolish(?)
No description available
asserta(?)
No description available
assertz(?)
No description available
at_end_of_stream
No description available
at_end_of_stream(?)
No description available
atom_chars(?, ?)
No description available
atom_codes(?, ?)
No description available
atom_concat(?, ?, ?)
No description available
atom_length(?, ?)
No description available
char_conversion(?, ?)
No description available
clause(?, ?)
No description available
current_char_conversion(?, ?)
No description available
current_input(?)
No description available
current_op(?, ?, ?)
No description available
current_output(?)
No description available
current_prolog_flag(?, ?)
No description available
current_prolog_flag(?, ?)
No description available
flush_output
No description available
flush_output(?)
No description available
get_byte(?)
No description available
get_byte(?, ?)
No description available
get_char(?)
No description available
get_char(?, ?)
No description available
get_code(?)
No description available
get_code(?, ?)
No description available
halt(?)
No description available
initialization(?)
No description available
is(?, ?)
No description available
number_chars(?, ?)
No description available
number_codes(?, ?)
No description available
peek_byte(?)
No description available
peek_byte(?, ?)
No description available
peek_char(?)
No description available
peek_char(?, ?)
No description available
peek_code(?)
No description available
peek_code(?, ?)
No description available
put_byte(?)
No description available
put_byte(?, ?)
No description available
put_char(?)
No description available
put_char(?, ?)
No description available
put_code(?)
No description available
put_code(?, ?)
No description available
retract(?)
No description available
set_input(?)
No description available
set_output(?)
No description available
set_prolog_flag(?, ?)
No description available
set_prolog_flag(?, ?)
No description available
set_stream_position(?, ?)
No description available
stream_property(?, ?)
No description available
sub_atom(?, ?, ?, ?, ?)
No description available
subsumes_term(?, ?)
No description available
unify_with_occurs_check(?, ?)
No description available

Reexports

reexport eclipse_language
except floor / 2, ceiling / 2, current_op / 3, round / 2, truncate / 2, ^ / 2, ^ / 3, is / 2, > / 2, < / 2, >= / 2, =< / 2, =:= / 2, =\= / 2, abolish / 1, asserta / 1, assertz / 1, atom_length / 2, clause / 2, get_char / 1, get_char / 2, put_char / 1, put_char / 2, retract / 1
reexport multifile

Other Exports

export op(0, fy, abolish)
export op(0, fy, dynamic)
export chtab(96, string_quote)
export chtab(34, list_quote)
export syntax_option(dense_output)
export syntax_option(not nl_in_quotes)
export syntax_option(iso_escapes)
export syntax_option(iso_base_prefix)
export syntax_option(iso_restrictions)
export syntax_option(no_string_concatenation)
export syntax_option(eof_is_no_fullstop)
export syntax_option(not syntax_errors_fail)
export syntax_option(plus_is_no_sign)
export syntax_option(doubled_quote_is_quote)
export syntax_option(bar_is_no_atom)
export syntax_option(blanks_after_sign)
export syntax_option(float_needs_point)
export syntax_option(limit_arg_precedence)
export op(200, xfx, **)

Description

Overview

This library provides the essential features of ISO-Prolog (ISO/IEC 13211-1) without aiming for full conformance, in particular with respect to error handling.

This is one of three libraries providing different degrees of ISO compatibility:

iso_strict
Aims to be fully ISO compliant, and represents the 'strict mode' required by the standard.
iso
Aims to be fully ISO compliant, but also includes ECLiPSe functionality that does not conflict with the standard.
iso_light
Provides the essence of ISO features without aiming for full conformance (in particular with respect to error handling), and may include ECLiPSe extensions that go beyond what the letter of the standard allows. Also useful for importing individual ISO features into a program that is otherwise written in ECLiPSe dialect.

Usage as a language-module

The effect of this compatibility library is (with minor exceptions) local to the module where it is loaded. An program written in this dialect should always be contained in a separate module, starting with a directive like
    :- module(myisomodule, [], iso_light).
    
Here, the last argument of the module/3 directive indicates the language. It is not advisable to use ":-lib(iso_light)" or ":-ensure_loaded(library(iso_light))" within an eclipse_language module, because this would lead to import conflicts between the different versions of built-in predicates.

Alternatively, in order to use ISO-Prolog without having different modules, one can invoke eclipse with a "-L iso_light" command line option, or set the ECLIPSEDEFFAULTLANGUAGE environment variable to 'iso_light'. This will launch eclipse with a default module accepting 'iso_light' language instead of the usual 'eclipse_language'.

Using individual features

It is possible and meaningful to import only individual predicates from this library, e.g.
    :- import sub_atom/5 from iso_light.
    
This will only make sub_atom/5 available, without affecting syntax settings in the importing module.

Differences

The main differences of the iso_light language compared to the default eclipse_language are the following:

About

See Also

library(multifile), library(iso_strict), library(iso)
Generated from iso_light.eci on 2022-09-03 14:26