SWI-Prolog 5.6.0/XPCE 6.6.0 stable release
==========================================

Highlights of changes since 5.4.x
=================================

Unicode support
---------------

The basic SWI-Prolog engine and many of   the important packages now the
UNICODE character set. This simplifies   applications handling documents
of several characters sets simultaneously,   something which is commonly
found in web-applications. Prolog can now  represent any HTML, SGML, XML
or  RDF  document   without   loss    of   information   or  complicated
representations.

Especially programs manipulating character sets   other than ISO-Latin-1
must be checked. The  predicates  get_code/2   and  get_byte/2  are  now
different! Character codes are indenpendent  of   the  locale,  but code
using explicit numeric character  codes  must   be  updated  to  use the
UNICODE values or -better- the 0'<char> syntax

Please check the section name "Wide character encodings on streams" in
the manual for further reference.


Unbounded integer and rational arithmetic
-----------------------------------------

By default SWI-Prolog is now linked   against the GNU Multiple Precision
arithmetic library (GMP), This provides unbounded arithetic as expressed
in the ISO Prolog flag `bounded' absence of the Prolog flags min_integer
and max_integer. With this  change  the   dubious  silent  conversion of
integer to float on arithmetic overflow   as  well conversion of `whole'
floats to integers has been removed.

Rational arithmetic allows for expressions such as

	?- A is 1 rdiv 4 + 5 rdiv 6.

	A = 13 rdiv 12


New and improved constraint libraries
-------------------------------------

5.6.0 has a much faster version  of   the  CHR constraint library by Tom
Schrijvers, clp(r) by Leslie  de  Koninck   as  well  as  some dedicated
constraint libraries by Markus Triska.


Semantic Web library
--------------------

There are many additions to the  semantic web infra-structure, including
full  thread-safety,  transaction  support  and   triggers  in  the  RDF
store.


Version 5.6.8 Patches relative to 5.6.7
=======================================

Prolog

  * Fixed and provide xterm-console for thread in MacOS
  * Added some primitives to improve thread debugging.  See tspy/1 and
    friends.
  * Fixed exception handling from user-defined functions.
							    
Packages
  
  * Semweb: Many internal changes.  New library rdf_litindex.pl provides
    indexing inside literals.
  * Semweb: Added rdf_persistency.pl, providing persistent storage for
    the RDF database.  This library is moved from the SeRQL package
    after having proved its value.  Some fixes and extensions to the
    literal indexing code.
  * XPCE: There is a bug in the MacOS XIM code that causes a deadlock
    entering keys using Alt-key if we enable threading in X11.  Turns
    out most applications run fine without threading in Xlib enabled,
    but the graphical debugger causes a crash.  Bug filed with Apple.
    As a work-around there is send(@display, x11_threads, @on).  See
    documentation for the issues.

