Node:Changes in release 3, Next:Changes introduced in 3#4, Previous:Revision history, Up:Revision history
0'
notation denote escape sequences. Character escaping can be switched off.
call_residue/2 has been modified so that
goals that are disjunctively blocked on several variables are returned
correctly in the second argument.
setarg/3 has been removed. Its
functionality is provided by the new built-ins create_mutable/2,
get_mutable/2, update_mutable/2, and is_mutable/2,
which implement a timestamp technique for value-trailing with low-level
support.
unix/1 and plsys/1 have been
removed. Their functionality is provided by
prolog_flag(argv,X), by the new halt/1 built-in, and
by the new library(system) module which also contains several new
predicates.
library(sockets) module.
time_out/3 has been moved to the new
library(timeout) module.
term_hash/[2,4], subsumes_chk/2, and
term_subsumer/3 have been moved to the new library(terms)
module, which also contains operations for unification with occurs-check,
testing acyclicity, and getting the variables of a term.
+chars, -chars and [-chars] for fast conversion between
C strings and Prolog lists of character codes. Several new interface functions
are available.
SP_term_ref,
making the functions SP_show_term() and SP_hide_term() obsolete.
library(gmlib) has been replaced by
the Tcl/Tk based library(tcltk). A version of library(gmlib)
converted to SICStus Prolog release 3 is available from
ftp://ftp.sics.se/archive/sicstus3/gmlib.tar.gz.
library(objects) module has been enhanced.
self.
Prolog goals in methods must be prefixed by :.
library(charsio), the open_chars_stream/[3,4] predicates
have been replaced by open_chars_stream/2 and
with_output_to_chars/[2,3].
library(assoc) module now implements AVL trees instead of
unbalanced binary trees.
library(atts) implements
attributed variables, a general mechanism for associating logical variables
with arbitrary attributes. Comes with a number of hooks that make it
convenient to define and interface to constraint solvers.
library(clpb)
and is implemented on top of library(atts).
library(clpq)) and reals
(library(clpr)), implemented on top of library(atts).
user:goal_expansion/3 is a new hook predicate for macro-expansion.
bb_put/2, bb_get/2, bb_delete/2, and bb_update/3
are new built-ins implementing blackboard primitives.
prolog_load_context/2 is a new built-in predicate
for accessing aspects of the context of files being loaded.
user:file_search_path/2 is a new hook predicate
providing an alias expansion mechanism for filenames.
gcd/2 is a new built-in function.
walltime measures elapsed absolute time.
ensure_loaded/1 and use_module/[1,2,3]
have the same semantics as in development systems.