Fri Jun 10 15:59:42 CEST 2011 * GNU Prolog is now licensed under a dual license LGPL or GLP * port to x86_64/MinGW64 - many thanks to: Jasper Taylor (see src/WINDOWS64) * port to x86_64/MSVC (see src/WINDOWS64) * add a configure option to control Windows HtmlHelp --disable-htmlhelp or --enable-htmlhelp[=static/dynamic] * improve a lot (and fix some bugs in) the Windows GUI Console * change location of gprologvars.bat under Windows (in install directory) * increase default stack sizes (32Mb for heap, 16Mb for others) * change the default setting for flag strict_iso: it is on now * add control constructs to the predicate table * modify predicate_property/2 (built_in_fd ==> built_in, add control_construct) only accepts a Head (a callable) (no longer a predicate indicator) * fix a bug in the compiler (bad unification with singleton variable) * fix a bug with strict_iso flag (was not passed to consult) * add shebang support using #!/usr/bin/gprolog --consult-file * modify the mangling scheme for future module support (see hexgplc) * fix write_term default options (now numbervars(false) and namevars(false)) * fix read/1: tab and newlines are not accepted inside single/back/double quoted tokens * add additional errors to compare/3 and keysort/2 * accept space under the top-level (same as ;) * modify portray_clause/1-2 to add a newline at the end of the output * add acyclic_term/1 (compatibility only since GNU Prolog does not handle cyclic terms) * fix write/1 to treat '$VARNAME'(Atom) as a var name only if Atom is a valid var name Mon Nov 29 15:48:25 CET 2010 * rename evaluable functor atan/2 as atan2/2 and >< as xor * add evaluable functor div/2 * detect op/3 error cases for | [] {} * replace type_error(variable, X) by uninstantiation_error(X) (e.g. open/3-4) Fri Nov 26 12:00:32 CEST 2010 * add built-in term_variables/2-3 and subsumes_term/2 Mon Nov 22 17:12:58 CEST 2010 * add some type tests on chars and codes (in number_chars/2, number_codes/2,..) Wed Nov 17 15:43:38 CEST 2010 * fix some little bugs in the parser * add meta_predicate property to predicate_property/2 Mon Oct 25 10:39:51 CEST 2010 * fix a memory leak in atom_concat/3 (in case of failure) Tue Jul 13 16:19:42 CEST 2010 * add infix operator '|' (and allow it to be unquoted in read/write) * improve top-level variables display adding () when needed Fri Jun 25 11:10:43 CEST 2010 * fix a bug in length/2 (length(L,L) now loops) Thu Jun 24 10:17:04 CEST 2010 * support the ISO multifile/1 directive * add built-ins false/0 and forall/2 * detect an instantation_error in phrase/2-3 Fri Mar 31 15:52:42 CEST 2010 * GNU Prolog is now licensed under LGPL Tue Mar 16 11:35:32 CET 2010 * allow rounding functions to accept an integer if strict_iso is off Tue Dec 1 14:11:10 CET 2009 * group all examples under a new directory 'examples' Fri Nov 20 16:34:36 CET 2009 * fix a bug in read_from_codes/2 and number_codes/2 * improve speed of built-in predicates on list (append, member, reverse,...). Mon Nov 16 14:30:33 CET 2009 * improve CTRL+C handling under the top-level Thu Oct 22 11:11:02 CEST 2009 * add is_list/1 (same as list/1) Wed Oct 21 12:02:15 CEST 2009 * add Prolog flags: dialect, home, host_os, host_vendor, host_cpu, host, arch, version, version_data, unix, argv Tue Oct 20 13:15:44 CEST 2009 * add preprocessor directives if/1 else/0 elif/1 endif/0 Mon Oct 12 17:30:11 CEST 2009 * fix a bug on large ints in the byte-code for 64-bits machine * fix a bug with call/2-N * change listing/0-1 printing stream: now it is current_output * add a new stream alias: user_error associated to stderr Fri Oct 9 14:40:11 CEST 2009 * add evaluable functors: (a)sinh/1, (a)cosh/1, (a)tanh/1 * add evaluable functors: epsilon/0, lsb/1, msb/1, popcount/1 Thu Oct 8 17:26:36 CEST 2009 * fix compilation problem under Mac OS X Snow Leopard (force 32-bits mode) Wed Oct 7 16:14:16 CEST 2009 * add evaluable functors: log/2, gcd/2, tan/1, atan/2, pi/0, e/0 * add built-in ground/1 * rename built-in sort0 as msort * add new error detection for keysort Tue Oct 6 12:47:32 CEST 2009 * accept (but ignore) directive encoding/1 * add >< operator (bitwise XOR) ^/2 becomes integer exponentiation * improve randomize/0 (more different values on consecutive calls) * relax the lexer to also accept 0'' (ISO requires 0''' or 0'\') Tue Mar 10 17:14:36 CET 2009 * fix a bug with top-level options --entry-goal and --query-goal Fri Feb 6 11:02:57 CET 2009 * add working sigaction detection to detect fault addr (e.g. Mac OS X) Fri Jan 23 12:16:18 CET 2009 * add gplc option --no-mult-warn * add prolog flags suspicious_warning, multifile_warning Mon Nov 3 14:54:25 CEST 2008 * detect integer underflow/overflow in the parser * fix a memory leak in catch/3 Mon Oct 20 16:53:37 CEST 2008 * increase limits (MAX_VAR_NAME_LENGTH=1024 and MAX_VAR_IN_TERM=10240) * add PL_INT_LOWEST_VALUE and PL_INT_GREATEST_VALUE to gprolog.h Fri Oct 17 12:09:37 CEST 2008 * prefix all global symbols, constants and types with Pl_ PL_ Pl * fix a bug in the byte-code due to new max number of atoms * provide a minimal gprolog.h * detect if struct sigcontext needs asm/sigcontext.h on linux Wed Oct 1 15:48:45 CEST 2008 * modify gplc: --c-compiler also sets linker and --linker added Tue Sep 30 15:12:00 CEST 2008 * port to x86_64/bsd - many thanks to: David Holland * fix problem using ebx as global reg (bug in gcc 4.3.2) * fix a bug in is/2 with [X] (X should only be an integer) * fix a bug with atoms '/*' '*/' and '%' (were not quoted) * increase maximum number of atoms to 1048576 (2^20) * increase default stack sizes (16Mb for heap, 8Mb for others) Fri May 18 13:06:58 CEST 2007 * fix stack alignment for x86_64/Solaris Wed Mar 28 15:12:58 CEST 2007 * include patch from Paul Eggert for sparc/solaris8 Fri Mar 9 10:31:53 CET 2007 * port to x86_64/Solaris - many thanks to: Scott L. Burson Thu Mar 8 14:12:50 CET 2007 * fix a bug in the FD solver (under 64 bits machines) * fix a bug in arithmetics (mod) Thu Jan 4 11:17:12 CET 2007 * change error messages emitted by the compiler to follow GNU standards Fri Dec 22 14:21:26 CET 2006 * modify doc (mainly rename manual.xxx to gprolog.xxx) * add DESTDIR variable support in main Makefile for staged installs Fri Dec 15 17:48:30 CET 2006 * fix a bug with Prolog floats in x86_64/linux (bad stack alignment) * port for ix86/darwin (Mac OS X) Fri Dec 8 16:59:49 CET 2006 * add check target to main Makefile Thu Dec 7 14:59:46 CET 2006 * improve Win32 ports (cygwin, MinGW, MSVC 6.0 and 2005 Express Edition) (MSVC port uses MinGW as.exe instead of nasm.exe - named mingw-as.exe Mon Nov 27 18:38:09 CET 2006 * rename call/2 to call_det/2 * implement call/2-11 as will be defined in the next standard Fri Nov 24 18:38:25 CET 2006 * fix various problems when compiling with gcc 4 (gcc 4.1.1) * emit .note.GNU-stack to mark the stack as no executable in x86_any.c, x86_64_any.c and powerpc_any.c * change the way objects are found (obj_chain.c) using gcc ctors * use Doug Lea malloc for OpenBSD (problem with malloc using mmap) * fix problems in various ports: alpha/linux, powerpc/darwin (Mac OS X), sparc/solaris, ix86/OpenBSD Mon Jun 13 15:46:49 CEST 2005 * fix 2 bugs in global variables Mon Jun 7 15:22:44 CEST 2004 * fix problem when compiling with gcc 3.4.0 Fri Jun 4 15:16:30 CEST 2004 * fix bug in term comparison involving negative integers Thu Mar 11 16:58:43 CET 2004 * add consult, ... and fix minor bugs in the Win32 GUI console menu Tue Mar 2 15:54:37 CET 2004 * fix the stack overflow detection under cygwin * port to ix86/MinGW - many thanks to: Cesar Rabak Mon Feb 9 14:38:43 CET 2004 * fix a bug in the port to sparc/solaris Mon Nov 3 11:13:14 CET 2003 * fix a problem in the port to x86/OpenBSD Tue Sep 23 11:10:09 CEST 2003 * port to sparc/NetBSD and powerpc/NetBSD - many thanks to: Jason Beegan Wed Apr 23 13:19:58 CEST 2003 * fix a bug in =../2 involving FD variables Fri Mar 21 14:09:26 CET 2003 * fix a bug in arithmetics (in float_{integer/fractional}_part) Thu Mar 6 09:28:20 CET 2003 * fix a bug in FD solver (wrong union with a singleton) Tue Feb 25 16:48:12 CET 2003 * fix a bug with the foreign C interface Wed Feb 19 18:10:22 CET 2003 * change configure.in: by default ebp is not used Mon Feb 17 13:45:05 CET 2003 * fix a but with CTRL+C handler not reinstalled Wed Jan 8 15:22:09 CET 2003 * fix a bug with _XXX (re)displayed under the top-level Mon Dec 16 13:00:42 CET 2002 * port to x86_64/linux - many thanks to: Gwenole Beauchesne Mon Sep 30 22:08:41 CEST 2002 * fix bug in predicate_property/2 Wed Sep 25 13:41:46 CEST 2002 * add new built-in fork_prolog/1 and create_pipe/2 Tue Sep 24 19:30:35 CEST 2002 * fix a bug in atom_concat/3 Thu Sep 19 12:53:45 CEST 2002 * fix bug when detecting if a stream can be repositioned Thu Sep 12 18:45:10 CEST 2002 * fix bug in output to constant terms (e.g. write_to_atom/2) * include another additional patch for sockets under win32 - due to: Brent Fulgham * fix bug in bagof/3 with FD variables * fix bug with randomize/0 Fri Jun 21 18:32:06 CEST 2002 * added min/max to Prolog arithmetics Thu Jun 20 15:20:43 CEST 2002 * fix bugs in current_predicate and predicate_property Mon Jun 10 14:25:52 CEST 2002 * port to powerpc/Darwin (Mac OS X) - many thanks to: Lindsey Spratt * fix bug in Win32 GUI console (deal with edit control text limit) * fix bug with in-place installation procedure Wed Apr 24 19:00:03 CEST 2002 * fix problem with portray_clause/2 using $VARNAME and $VAR now portray_clause((p(Z):-p('$VARNAME'('A'),Z))) is ok Tue Apr 23 13:13:18 CEST 2002 * fix bug with stream buffering (open/4 and set_stream_buffering/2) Sat Apr 21 13:09:54 CEST 2002 * add stream mirror facility (see add_stream_mirror/2) Fri Apr 19 15:20:51 CEST 2002 * improve global vars (arg. selector, automatic array, new built-ins) Sun Apr 14 16:35:10 CEST 2002 * fix two bugs with Ctrl+C reentrency under the top-level Thu Apr 11 20:30:16 CEST 2002 * added priority/1 option to write_term to specify starting priority * now under the top-level, _XXX variables are not displayed Wed Apr 10 15:04:23 CEST 2002 * fix bug in decompose_file_name/4 (tried to modify read-only string) * now open/4 better detects if a stream can be repositioned Mon Apr 8 20:08:29 CEST 2002 * add source reader facility (built-in) - not yet documented * fix current_predicate bug, now current_predicate(nl/0) fails Fri Apr 5 12:32:26 CEST 2002 * fix linedit bug in tab pasting and add Esc-Tab function * now linedit goes to EOL at CR to fix bug with multi-line inputs * now linedit avoids to put in history 2 same consecutive lines * remove max_stream limitation (the Prolog flag no longer exists) * the template of get_print_stream/1 is now ?stream Thu Mar 28 00:35:59 CEST 2002 * patch to allow more than 64Mb for the stacks under ix86/linux Mon Mar 25 13:34:52 CEST 2002 * fix a bug in wam2ma (hexa name creation overflowed malloc buffer) Fri Mar 22 11:31:52 CEST 2002 * fix a problem under sparc/solaris using mmap (adding MAP_FIXED) Tue Mar 19 18:51:50 CEST 2002 * fix a problem with gcc 3.0.x which always uses ebp in main() * use -march=xxx gcc option instead of -mxxx for ix86 Tue Jan 15 19:26:26 CEST 2002 * gplc now passes -L option to ld in the order of apparition * gplc accepts meta-characters %p, %d,... in output file names Tue Jan 8 16:51:48 CEST 2002 * include additional patch for sockets under win32 - due to: Brent Fulgham Thu Dec 20 16:17:00 CEST 2001 * re-write Windows GUI Console in pure Win32 (no more MFC) * adapt configure.in to work with autoconf 2.52 Thu Dec 13 12:09:36 CEST 2001 * add Prolog flag back_quotes and values {atom,chars,codes}_no_escape * use a terminal recusion in FD arithmetic normalization Wed Dec 12 11:04:57 CEST 2001 * fix bug in bind_variables/2, reported by: Bowie Owens Tue Dec 11 18:25:19 CEST 2001 * modify Ma2Asm mappers to use Y_OFFSET (from ENVIR_STATIC_SIZE) * fix some bugs in the Wam debugger Fri Dec 7 19:01:02 CEST 2001 * add several options to the top-level to execute goals * add an environment variable LINEDIT to control linedit options * fix bug in linedit on \b in start of line (using ANSI ESC sequence) * now linedit works with XFree keyboard encoding Tue Dec 4 20:29:00 CEST 2001 * simplify linedit: only apply to stdin * now linedit is reentrant * rename built-in get_code_no_echo/1-2 by get_key_no_echo/1-2 * add built-in get_key/1-2 * use get_key/1-2 in the top_level + debugger (thus with echo) * improve the top-level Ctrl+C manager Mon Dec 3 18:13:16 CEST 2001 * fix bux on linux configured with --disable-regs * add pipe to pl2wam stdin when called by consult/1 Mon Nov 5 10:25:29 CEST 2001 * fix bug in FD: forall is now recognized in .fd files * fix bug in DCG: expand_term((a --> X), Y) is OK Wed Oct 31 20:31:04 CEST 2001 * fix X paste problem in linedit Tue Oct 3O 17:31:04 CEST 2001 * simplify top_comp.c to better control include dirs in devel. mode Sun Oct 14 17:12:32 CEST 2001 * specialized functions for create/update/delete choice points Tue Oct 9 12:11:44 CEST 2001 * fix a bug in wam2ma (hexa name creation overflowed malloc buffer) Mon Oct 8 12:33:02 CEST 2001 * include patch to support basic sockets under win32 - due to: Brent Fulgham * arithmetic functions and inlined built-ins use fast call * specialized functions for switch_on_term_xxx * modify pl2wam to generalize '$call_c' (add options) Mon Oct 8 11:33:02 CEST 2001 * fix bug - delete file created by mkstemp(2), patch from: Salvador Abreu Fri Sep 28 17:09:35 CEST 2001 * space_args(true) now displays a space inside {}/1 * space_args(true) now displays a space after a comma (','/2) Sat Sep 15 12:49:19 CET 2001 * add a --foreign-only option to pl2wam * foreign/2 directives are ignored in byte-code mode (no fatal error) Fri Sep 7 09:58:36 CET 2001 * space_args(true) now displays space between operators and arguments * add CVS Id to prolog files * fix bug in pl2wam to include break/0, trace/0,... in bip_list.pl Thu Jul 12 16:03:30 CET 2001 * get rid of mktemp and tempnam calls (use mkstemp if available) Thu Jun 7 20:34:13 CET 2001 * fix a bug in fd_element_var/3 constraint Thu Feb 8 11:25:30 CET 2001 * fix bug in fd headers (fd_to_c.h not installed) Thu Jan 25 21:12:06 CET 2001 * fix a bug with unify_with_occurs_check/2 * fix bug on ix86 using ebp (add -fomit-frame-pointer in CFLAGS_MACHINE) Mon Jan 22 12:41:26 CET 2001 * fix a bug with ! in dynamic code * fix a bug in arithmetics Tue Dec 19 16:32:39 CET 20000 * big modification (1 month) to optimize the execution speed Thu Nov 9 19:06:06 CEST 2000 * implement fast call (mainly for WAM functions) Tue Nov 7 15:12:11 CEST 2000 * modify C->Prolog foreign interface to recover arguments space Mon Nov 6 14:58:07 CEST 2000 * improve dynamic clause management and fix a bug (memory leak) Fri Nov 3 09:17:19 CEST 2000 * fix _ symbol prefix problem for Free BSD Fri Oct 13 17:46:38 CEST 2000 * no longer use dl_malloc on Linux but prevent MMAP using mallopt Tue Sep 12 15:42:48 CEST 2000 * full re-indentation of the sources for CVS Thu Sep 7 18:04:15 CEST 2000 * added acos/asin to Prolog arithmetics Wed Sep 6 20:04:15 CEST 2000 * port to alpha/linux - many thanks to: Alexander Diemand * port to alpha/OSF1 * port to mips/irix - many thanks to: Alexander Diemand * fix a bug in stty.c (use standard termios if present) Mon Jul 31 11:42:44 CEST 2000 * fix a bug in stty.c (use termio by default and else termios) Thu Jul 6 11:38:58 CEST 2000 * more customizable configuration/installation procedure Mon Jun 3 19:57:20 CEST 2000 * port for ix86/NetBSD - many thanks to: Brook Milligan Wed Jun 28 11:38:37 CEST 2000 * rename configuration file config.h by gp_config.h Mon Jun 19 14:24:44 CEST 2000 * avoid to establish a connection at start to get the hostname Tue Jun 6 16:51:48 CEST 2000 * fix a bug in the compiler about \\ inside quoted atoms Thu May 4 17:39:53 CEST 2000 * fix a bug in dynamic clause retraction (memory leak) Wed Apr 26 10:51:53 CEST 2000 * fix a bug in dynamic clause retraction (memory leak) Tue Apr 25 16:32:09 CEST 2000 * fix a bug in atom management (existing atoms eat mallocated space) Tue Apr 18 13:23:02 CEST 2000 * added creation/1 and last_access/1 property to file_property/2 Wed Mar 1 14:23:45 CEST 2000 * start of native Win32 port Mon Feb 14 14:00:46 CET 2000 * port for ix86/FreeBSD - many thanks to: Nicolas Ollinger Tue Jan 18 17:30:25 CET 2000 * fix a bug in the byte-code loader (bad realloc computation) * fix a bug in the malloc (used MMAP under linux) Fri Dec 17 15:54:51 CET 1999 * port for ix86/SCO - many thanks to: Clive Cox and Edmund Grimley Evans * port for ix86/solaris - many thanks to: Andreas Stolcke Thu Dec 16 18:23:13 CET 1999 * fix a bug in the FD solver for X#\=C (if C is max(X)) Thu Dec 2 17:31:31 CET 1999 * fix a bug with directory_files/2 (too many open files) Thu Nov 25 14:27:11 CET 1999 * fix a bug in the compiler about \t in quoted atoms Fri Oct 22 14:59:47 CEST 1999 * fix a bug in the scanner about 0' Mon Oct 18 12:46:59 CEST 1999 * fix bug with popen/3 * update machine.c for struct sigcontext under Linux Fri Oct 8 19:36:59 CEST 1999 * fix a bug with some extended characters in native compilation Tue Sep 28 18:00:44 CEST 1999 * implement call_with_args Mon Sep 27 16:18:55 CEST 1999 * fix a bug in sign/1 for arithmetic evaluation Fri Jul 16 13:26:31 CEST 1999 * fix a bug in foreign C calling Prolog for sparc Thu Jul 15 12:04:38 CEST 1999 * fix a bug for sparc compilation * fix a bug in foreign code under sparc * update pl_config.c to show which version is installed Tue Jul 6 14:47:51 CEST 1999 * add linedit test to avoid to re-echo an already buffered full-line * fix bugs is sort/1 Fri Jun 25 10:04:03 CEST 1999 * fix bug in sleep/1 (incorrect behavior with a float) * finish preliminar port to cygwin (see file src/PROBLEMS) Wed Jun 23 13:49:07 MEST 1999 * fix bug in FD solver (too much trail allocated due to bad vec_size) * fix labeling first-fail to correspond to clp(FD) Fri Jun 18 12:29:03 CEST 1999 * fix message from consult when pl2wam cannot be found Thu Jun 17 16:12:53 MEST 1999 * fix precision bug on floating constants Sun Jun 6 12:05:32 CEST 1999 * port for ix86/cygwin (Win32) (to finish) Fri Jun 4 11:05:37 CEST 1999 * fix bug in throw_c.c (foreign code catch exception) * improve Ma2Asm check.c and FromC/ utilities * port for PowerPC / GNU/Linux (see file src/PROBLEMS) Mon May 31 10:45:35 CEST 1999 * fix bug using egcs-1.1.2 (RedHat 6.0) (add a Stop_Prolog() fct) Fri May 21 15:56:50 MEST 1999 * removed Configure directory (clashes with ./configure under WinXX) * fix Linedit/Makefile.in (CFLAGS added) Fri May 21 11:54:31 MEST 1999 * added :- ensure_linked directive * fix bug in gplc help (-C/-A/-L instead of --C/--A/--L) * fix bug in gplc (with too long command-lines) * fix bug in M_Absolute_Path_Name() (/.automount gave /automount) Wed Apr 21 09:53:00 MEST 1999 * work release 1.0.1 * fix bug --disable-regs works now for solaris Mon Apr 19 19:46:07 MEST 1999 * optimize FD equations (math_supp.c) avoid qsort sometimes * fix bug in installation procedure (Html doc installation) Fri Apr 16 15:49:34 MEST 1999 * official release 1.0.0 * rewrite in C DCG translation: optimize unifications, no more ill-balanced conjunctions * fix bug in bc_supp.c to avoid aux pred name for unknown predicate * fix bug in pl2wam (:- set_prolog_flag(singleton_warning,off)) Thu Apr 8 19:09:40 MEST 1999 * current_prolog/1 conforms to ISO thanks to strict_iso flag * fix bug (type_list instead of instantiation error for Options) * fix bug setof (not sorted when comes down to findall) Tue Apr 6 20:48:32 MEST 1999 * add Prolog flag strict_iso (to relax predicate indicators) * fix number_chars and friends non ISO conforming behavior * modify wam2ma to avoid static arrays (use dynamic allocation) Sun Apr 4 15:28:12 MET 1999 * add in-place installation (modify configure.in and Makefile.in) Wed Mar 31 16:26:10 MET 1999 * add copyright headers in source files Thu Mar 30 17:20:10 MET 1999 * rewrite all solutions built-in predicates (in C) * add in-place sorts Wed Mar 24 10:12:02 MET 1999 * rewrite DCG translations Mon Mar 22 19:42:12 MET 1999 * fix compiler bug in wam2ma (atom using \xHH\ not correctly handled) Fri Mar 19 19:42:12 MET 1999 * rewrite sorts built-in predicates (in C) Mon Mar 15 10:12:02 MET 1999 * Calypso (beta 7) becomes GNU Prolog 0.9.0 change command names (calypso -> gprolog, plcc -> gplc,...) copyright messages (--version),... Fri Mar 12 09:38:24 MET 1999 * fail/0 caused an existence_error under the debugger Wed Mar 10 11:57:25 MET 1999 * user/built_in/built_in_fd not recognized by load/1 Mon Mar 8 20:39:25 MET 1999 * Calypso version 1.0-beta7 ready for internal use