SWI-Prolog ChangeLog ==================== Version 1.9.1. Added: Windows DDE interface, Added Unix/System-V (?) interface to dlopen() and friends to access shared objects dynamically. (both ALPHA) 2 fixes for readline version 2.x (tested 2.0.3): type-clash in pl-os.c and [FATAL ERROR: Not enough memory] on SunOs (malloc()/realloc() bug of SunOs library). Version 1.9.0. Incorporation of various ports: md-netbsd.h, md-mswin.h and md-msdos.h. There is a binary distribution for Windows in win-pl.tgz of the main ftp server (swi.psy.uva.nl). The DOS and Windows versions are created using the WATCOM-C/32 toolkit. ======================================================================= Version 1.8.12. Fixed tracer option `f' (fail) used on the exit port of a goal. Thanks to Thomas Hoppe. Version 1.8.8. Fix in the parser to avoid some bad syntax-error messages. Also fixed spurious crashes trying to read bad-syntax-terms of the form ?- atom,. New in the quintus.pl library: initialization/1, random/3, numbervars/3 and absolute_file_name/3. Version 1.8.7 includes the catch/throw-like control structures block(+Label, +Goal, -Rval), fail(+Label), exit(+Label, +Rval) and !(+Label). Also new is explain(+Anything) which will try to tell you a lot of what the system knows about the term you entered. Additions and suggesions are welcome. Also new: library(bim): A partial Prolog-by-BIM (tm) compatibility package by Henk Vandecasteele. Thanks. Further fixes: * Bug in detecting stack-overflow for the PC/linux version. * Handling of SWI_HOME_DIR (fixes installation problem for XPCE/SWI-Prolog). * atom_length/2: give warning (instead of crash) on invalid data-type (e.g. unbound, term). * nth_clause/3: Removed errornous warning when cut-off and fixed returning 0-reference for defined predicates without clauses. Version 1.8.6 defines phrase/[2,3] for accessing grammar rules and fixes name/2 for numbers outside the integer range (yielding a float). A predicate nth_clause/3 is added to provide access to specific clauses of predicates. xmalloc(), xrealloc() are added to fix some problems when linking with gnu-libraries. Version 1.8.5 contains a few fixes for the SunOs-4/gcc-2.5 combination. DONOT USE GCC-2.5.[123] as the optimiser appears broken. gcc-2.5.4 is ok again. Version 1.8.4 fixes =@=/2, contains a more logical form of arg/3, fixes passing empty-string arguments from the Prolog command-line and fixes some things for old non-ansi compilers. There are some extensions to the quintus.pl compatibility library. Version 1.8.3 Fixes some more readline problems having to do with running SWI-Prolog as an inferior process under EMACS. Version 1.8.2 fixes some serious problems in the tracer intoduced by more global changes in 1.8.0. Version 1.8.1 fixes load_foreign for both SunOs 4.1.3 and PC/Linux. Extensive use of the stat(2) system call is reduced with some changes to the file administration. This speeds up loading many small files by an incredible amount, notably when reading over a (slow) network. The manual is regenerated. There are not many changes, but the PostScript files in these archives are totally different as we upgrated LaTeX and dvips. Therefore the patch file **diff-1.8.0-1.8.1** does *not* include the patches to the PostScript manual. Version 1.8.0 includes a stack shifter, enabling dynamic stacks for machines that do not offer hardware support by providing suitable access to the virtual memory management. Fixed a bug in concat/3. expand_file/2 is now sensitive to fileerrors/2 while expanding $var or ~user. More bugfixes to the readline interface. Manual page contributed by Dave Sherrat. RS6000 port no longer uses -lbsd and compiles on gcc. ================================================================ Version 1.7.2 should compile on Solaris 2.2 using gcc 2.4.5. It fixes the usual couple of portability problems, the terminal interface when connected to the XPCE graphics library. It ads line_count to predicate_property to support a future graphical debugging tool. Version 1.7.1 fixes a very serious memory allocation violation in the connection to the readline library. Make sure to update from 1.7.0! Version 1.7.0 contains a version linked with the GNU readline library for bash/tcsh compatible line editing. The library readline is distributed separately and must be installed before installing prolog. The file readline-1.1.tar.gz contains the unmodified GNU sources. librl-1.1.tar.z contains the binaries for PC/Linux. ================================================================ Version 1.6.18 contains a fix to load_foreign/[2,5] for PC/Linux. [Version 1.6.17 has been reinstalled at Jun 1 23:16 with two prototype fixes and a fix to save_program/1 necessary for the RS6000.] Version 1.6.17 fixes some minor installation problems reported for 1.6.16. The online manual has been updated for trace/[1,2]. Callback of undefined Prolog-predicates from C now correctly trap the autoloader. Analysis of the PATH variable to find the Prolog executable has been fixed. Nothing serious if you have a running system! Version 1.6.16 integrates port to 386 System-V Unix made by Eric S. Raymond (esr@snark.thyrsus.com), who also ported the shell scripts to use sh rather than csh. The new predicates trace/1 and trace/2 allow for tracing individual predicates non-interactively. Version 1.6.15 eliminates some compiler limits, fixes a bug in trail-stacks management and provides a much better port for PC/Linux. Requires Linux kernel 99pl7 or later. Version 1.6.14 provides 8 bit character support. All characters in the range 128 ... 255 are treated as lowercase letters. op/3 is fixed to actually delete operators when priority 0 is specified. Version 1.6.13 implements standard order compatible to Quintus and contains a fix of the module system which broke the Quintus.pl replacement of retractall/1. Version 1.6.12 is te result of integrating ports to LINUX, OS/2 and HP/UX with the main-stream (SunOs).