forked from didoudiaz/gprolog
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNEWS
612 lines (519 loc) · 27.7 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
Change in GNU Prolog version 1.6.0
* add/modify Prolog flags: show_banner, show_information
* fix issue #43: add call_nth/2 built-in (part of the Prolog prologue)
* add built-in nb_setarg/3 (special case of setarg/4)
* fix issue #26: missing int_overflow for succ/2
* fix issue #41: ISO requires: round(4.5) = 5 and round(-4.5) = -4
* fix issue #40: new builts-in predicates: current_function/1 and function_property/2
* fix issue #31: support for term_expansion/2, with new mechanisms:
replace the compiler (pl2wam) concept of pl-state by simple include files (Prolog text):
- rename gplc (pl2wam) --pl-state option as --include
- remove built_in predicates read_pl_state_file_file/1 and write_pl_state_file_file/1
- add new built-in predicate write_default_include_file/1 (used by consult/1)
- add new built-in predicate consult/2 to pass options (with option include(File))
- new compiler_mode/1 directive to control the compiler environment.
* fix issue #38: add more error detections in format/2-3
* fix issue #39: bug in conditional compilation directives
* fix issue #37: bug in format/2-3
* fix issue #13: user meta_predicate definition is now returned by predicate_property/2
* fix issue #32: remove duplicate warning message
* speed up dynamic predicates with many clauses (for wordnet)
* improve linedit completion with a new map implementation (improves consult of wordnet files)
* improve compiler speed on large Prolog databases (for wordnet)
(speed up generation of indexing instructions switch_on_atom/integer/structure)
(use new map implementation (based on red-black trees) for wam2ma and ma2asm)
* speed up bind_variables/2 (also speed up the compiler for byte-code)
* increase max vars in a term to 2^20 (MAX_VAR_IN_TERM)
* increase default Prolog stack sizes and MAX_ATOMS
* extend exec/4-5 to also accept provided streams + null
* fix bug in exec/4 under windows (bad stream redirection and child console not hidden)
* improve fd_prime/1 built-in
* add show_information Prolog flag (--quiet deactivate it)
* add --quiet option to top-level command-line (do not display banner and info)
* add Prolog flag show_information (on/off)
* add new prefedined stream aliases (current_input, current_output)
* add new built-in to reassign a stream alias (set_stream_alias/2)
* port to RISC-V 64 bits/Linux - many thanks to
Jasper Taylor <jasper@simulistics.com>
* fix issue #23: add built-in predicate copy_file/2
* fix issue #10: missing int_overflow
* fix issue #22: math evaluation raises a float_overflow instead of int_overflow
* fix issue #21: bug in append/3
* fix issue #17: CTRL+C as first action under top-level causes a segmentation fault
* fix issue #20: length(L, L) raises an error instead of crashing (related to pr #19)
* fix asm problems on macos/M1 with large sources (mapper arm64_any.c)
* fix issue #4: directory_files/2 now uses native Win32 functions
* fix small problem when bootstrapping due to Makefiles
* fix format/2-3 to throw a domain error on invalid radix (pr #16)
* fix issue #9: format/2-3 now also accept a list of character for format
* fix problem in arm32 mapper when passing more than 8 double to a C function
* fix issue #7: length/2 now emits a type_error(list) only if the strict_iso flag is off
* fix infinite loop in debugger for multifile/dynamic predicates (issue #12)
* improve Makefiles with patches sent by Keri Harris on July 2021
Change in GNU Prolog version 1.5.0
* source repository moved to GiHub https://github.com/didoudiaz/gprolog
* port to arm64 (aarch64)/darwin (new Apple M1/MacOS architecture)
* port to arm64 (aarch64)/Linux (armv8) - many thanks to
Jasper Taylor <jasper@simulistics.com>
* port to arm32/Linux (armv6, armv7) - many thanks to
Jasper Taylor <jasper@simulistics.com>
* port to Termux on aarch64/android
* accept clang as C compiler on x86_64/linux (use CC=clang ./configure)
* restructure and improve the code of all MA-ASM mappers
* fix a bug in absolute_file_name, '/src/../' returned '' now '/'
* add error case to findall/4 (detects when Tail is not a list)
* set eof_action to reset for standard input/output/error streams even if not a tty
* add float_overflow and undefined for float arithmetic functions
* update ports to windows (32 and 64 bits with MSVC and masys2/mingw64)
* fix a bug when closing user_error
* fix a bug in phrase/2-3
* fix problem with gcc 10 which needs explicitly -fcommon
* fix bugs when Prolog integers are internally converted to C int (on 64 bits machine)
Change in GNU Prolog version 1.4.5 (Feb 2018):
* fix a bug in soft-cut (when a cut appears in the if-part)
* fix bug when consulting multifile predicates with alternatives
* add ?- ISO prefix operator
* add gplc option --new-top-level (add top-level command-line option handling)
* fix a bug on linux witg gcc 6.3.0 (or binutils): needs PIC code
* fix a bug in findall/4
* fix a bug in select/5 under Windows
* fix a bug in the compiler
* fix a bug in read/1
* fix large address awarenes under cygwin32 (configure.in)
* improve memory limitation of acyclic_term/1
* improve term output (write/1 and friends)
* improve error handling for options (e.g. in write_term/3)
* fix bug with cut in the if-part of if-then(-else)
* fix port to x86_64/OpenBSD
(machine kindly provided by Duncan Patton a Campbell)
* fix a bug with Apple/Yosemite gcc = LLVM version 6.0 (clang-600.0.56) on x86_64
* allow to define more atoms with MAX_ATOM env var on 64 bits machines
* fix a bug in bagof/3 when used as findall/3
* port to sparc64/OpenBSD
(machine kindly provided by Duncan Patton a Campbell)
* add built-in predicate findall/4
* fix a bug with linedit when environment variable LINEDIT=no
* fix bugs in the FD solver
* set socket option SO_REUSEADDR at socket creation
* support for alternate Prolog file extension .prolog
* fix a bug in atoms for 1-char atom '\0' (now acts as the empty atom)
* fix problems with Apple/Mavericks gcc = LLVM version 5.0 (clang-500.2.79) on x86_64
* remove clang warnings (uninitialized variables)
* fix bugs in the lexer of the form 0bop 2 when bop is an infix op
* fix terminal ANSI sequence handling in linedit
* increase internal compiler data sizes
* fix bug in gprolog.h (invalid 64 bits PL_MAX_INTEGER)
Change in GNU Prolog version 1.4.4 (Apr 2013):
* add Prolog flags c_cc_version_data
* fix a regression bug in linedit
* fix a little bug in the debugger
* add subtract/3 built-in predicate
Change in GNU Prolog version 1.4.3 (Mar 2013):
* add new C foreign interface functions converting term to/from C strings
* modify top-level banner to show 32/64 bits, compile date, C compiler name
* modify Linedit: fix Prolog prompt when Linedit is not activated
* modify linedit: accept gui=silent in env var LINEDIT
(does not warn if the windows gui DLL is not found)
* fixes for Windows 8 (i686 and x86_64) with MSVS 2012, mingw64 gcc > 4.5.3
* add Prolog flags address_bits, compiled_at, c_cc, c_cflags, c_ldflags
* fix a bug in the FD solver (option backtracks in fd_labeling)
* improve the FD solver (better propagation for reified constraints at labeling)
* improve the FD solver (add labeling option: value_method(bisect))
* improve the FD solver (avoid some cases of C stack overflow, improved fd_domain/3)
* fix another bug in the FD solver (regression bug in 1.4.2)
* add PlULong to gprolog.h and PlThrow(ball) to C foreign interface
* fix a bug in the FD solver (regression bug in 1.4.2)
Change in GNU Prolog version 1.4.2 (Dec 2012):
* fix a bug in the compiler for byte-code with op/3 directive
* fix a bug in the debugger
* modify decompose_file_name/4 (fix problems under windows)
* add built-in is_absolute_file_name/1 and is_relative_file_name/1
* modify the compiler include/1 directive handling
(if the file to include is not found, search in directories of parent includers)
* modify atom table management (its size can be defined via env. var MAX_ATOM)
* fix a bug with soft-call inside a meta-call
* implement term_hash/2 and term_hash/4. Backward incompatibility:
new_atom/3 and and atom_hash/2 no longer exists.
* fix some little bugs with 64 bits (e.g. stream id)
* modify the FD solver to handle very long computations
* fix a bug in the compiler (unification with fresh vars in the body)
* fix a bug with *-> containing ! in the test part (! was not local to the test)
* fix a bug to configure with sigaction on old Linux kernels
* fix some problems/bugs on 64 bits machine
Change in GNU Prolog version 1.4.1 (Jun 2012):
* improve signal handling
* add an option --wam-comment to gplc and pl2wam
* fix multifile directive (works now with an empty predicate as required by ISO)
* fix absolute_file_name to expand ~ using HOMEDRIVE and HOMEPATH under windows
if HOME is not defined
* improve listing/0-1 output
* add soft cut control construct and its associated operator *->
* improve the top-level results in case of cyclic terms
* fix arithmetic evaluable functor ^/2 to work with floats
* increase maximum number of variables in a term
* add write_term option variable_names
* add built-in predicates between/3 and succ/2
* fix bug in the DCG expander
* fix bug in member/2
* recognize escape sequence \s (space) and \e (escape) if strict_iso is off
* add error detection in length/2 if given length is negative
* add built-in predicates maplist/2-9
* fix a regression bug in the FD solver about sparse domains
* increase size of FD internal stacks and fix memory leak
* port to x86_64/Darwin (Mac OS X) - many thanks to
Ozaki Kiichi <gclient.gaap@gmail.com>
* fix a bug in x86_64 with --disable-regs
* fix a bug when consulting a file under Win XP/Vista 32 bits
* fix a bug when consulting a file using '$VAR'(N) or '$VARNAME'(A)
* fix a bug in new_atom/1-2 which returned duplicates
* fix a bug in write/1 when an empty atom is passed
* improve portray_clause (numbervars and space before final dot)
Change in GNU Prolog version 1.4.0 (Jul 2011):
* GNU Prolog is now licensed under a dual license LGPL or GPL
* port to x86_64/MinGW64 - many thanks to
Jasper Taylor <jasper@simulistics.com> (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
* 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)
* add built-in term_variables/2-3 and subsumes_term/2
* add some type tests on chars and codes (in number_chars/2, number_codes/2,..)
* fix some little bugs in the parser
* add meta_predicate property to predicate_property/2
* fix a memory leak in atom_concat/3 (in case of failure)
* add infix operator '|' (and allow it to be unquoted in read/write)
* improve top-level variables display adding () when needed
* fix a bug in length/2 (length(L,L) now loops)
* support the ISO multifile/1 directive
* add built-ins false/0 and forall/2
* detect an instantiation_error in phrase/2-3
* GNU Prolog is now licensed under LGPL
* allow rounding functions to accept an integer if strict_iso is off
* group all examples under a new directory 'examples'
* fix a bug in read_from_codes/2 and number_codes/2
* improve speed of built-in predicates on list (append, member, reverse,...).
* improve CTRL+C handling under the top-level
* add is_list/1 (same as list/1)
* add Prolog flags: dialect, home, host_os, host_vendor, host_cpu,
host, arch, version, version_data, unix, argv
* add preprocessor directives if/1 else/0 elif/1 endif/0
* 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
* add evaluable functors: (a)sinh/1, (a)cosh/1, (a)tanh/1
* add evaluable functors: epsilon/0, lsb/1, msb/1, popcount/1
* fix compilation problem under Mac OS X Snow Leopard (force 32-bits mode)
* add evaluable functors: log/2, gcd/2, tan/1, atan2/2, pi/0, e/0
* add built-in ground/1
* rename built-in sort0 as msort
* add new error detection for keysort
* accept (but ignore) directive encoding/1
* add xor/2 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'\') if strict_iso is off
* fix a bug with top-level options --entry-goal and --query-goal
Change in GNU Prolog version 1.3.1 (Feb 2009):
* add working sigaction detection to detect fault addr (e.g. Mac OS X)
* add gplc option --no-mult-warn
* add prolog flags suspicious_warning, multifile_warning
* detect integer underflow/overflow in the parser
* fix a memory leak in catch/3
* 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
* 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
* modify gplc: --c-compiler also sets linker and --linker added
* port to x86_64/BSD - many thanks to
David Holland <dholland@netbsd.org>
* 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)
* fix stack alignment for x86_64/Solaris
* include patch from Paul Eggert <eggert@cs.ucla.edu> for sparc/solaris8
* port to x86_64/Solaris - many thanks to
Scott L. Burson <Scott@coral8.com>
* fix a bug in the FD solver (under 64 bits machines)
* fix a bug in arithmetics (mod)
Change in GNU Prolog version 1.3.0 (Jan 2007):
* change error messages emitted by the compiler to follow GNU standards
* modify doc (mainly rename manual.xxx to gprolog.xxx)
* add DESTDIR variable support in main Makefile for staged installs
* fix a bug with Prolog floats in x86_64/Linux (bad stack alignment)
* port for ix86/Darwin (Mac OS X)
* add check target to main Makefile
* 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
provided in the setup.exe)
* rename call/2 to call_det/2
* implement call/2-11 as will be defined in the next standard
* 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
Change in GNU Prolog version 1.2.19 (Jun 2005):
* fix 2 bugs in global variables
Change in GNU Prolog version 1.2.18 (Jun 2004):
* fix problem when compiling with gcc 3.4.0
* fix bug in term comparison involving negative integers
* add consult, ... and fix minor bugs in the Win32 GUI console menu
* fix the stack overflow detection under Cygwin
* port to ix86/MinGW - many thanks to
Cesar Rabak <csrabak@ig.com.br>
* fix a bug in the port to sparc/solaris
* fix a problem in the port to x86/OpenBSD
* port to sparc/NetBSD and powerpc/NetBSD - many thanks to
Jason Beegan <jtb@netbsd.org>
* fix a bug in =../2 involving FD variables
* fix a bug in arithmetics (in float_{integer/fractional}_part)
* fix a bug in FD solver (wrong union with a singleton)
* fix a bug with the foreign C interface
Change in GNU Prolog version 1.2.17 (Feb 2003):
* change configure.in: by default ebp is not used
* fix a but with CTRL+C handler not reinstalled
* fix a bug with _XXX (re)displayed under the top-level
* port to x86_64/Linux - many thanks to
Gwenole Beauchesne <gbeauchesne@mandrakesoft.com>
Change in GNU Prolog version 1.2.16 (Sep 2002):
* fix bug in predicate_property/2
* add new built-in fork_prolog/1 and create_pipe/2
* fix a bug in atom_concat/3
* fix bug when detecting if a stream can be repositioned
Change in GNU Prolog version 1.2.15 (Sep 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 <brent.fulgham@xpsystems.com>
* fix bug in bagof/3 with FD variables
* fix bug with randomize/0
Change in GNU Prolog version 1.2.14 (Jun 2002):
* added min/max to Prolog arithmetics
* fix bugs in current_predicate and predicate_property
Change in GNU Prolog version 1.2.13 (Jun 2002):
* port to powerpc/Darwin (Mac OS X) - many thanks to
Lindsey Spratt <spratt@alum.mit.edu>
* fix bug in Win32 GUI console (deal with edit control text limit)
* fix bug with in-place installation procedure
* fix problem with portray_clause/2 using $VARNAME and $VAR
now portray_clause((p(Z):-p('$VARNAME'('A'),Z))) is OK
* fix bug with stream buffering (open/4 and set_stream_buffering/2)
* add stream mirror facility (see add_stream_mirror/2)
Change in GNU Prolog version 1.2.12 (Apr 2002):
* improve global vars (arg. selector, automatic array, new built-ins)
* fix two bugs with Ctrl+C reentrancy under the top-level
* added priority/1 option to write_term to specify starting priority
* now under the top-level, _XXX variables are not displayed
* fix bug in decompose_file_name/4 (tried to modify read-only string)
* now open/4 better detects if a stream can be repositioned
* add source reader facility (built-in) - not yet documented
* fix current_predicate bug, now current_predicate(nl/0) fails
* 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
* patch to allow more than 64Mb for the stacks under ix86/Linux
* fix a bug in wam2ma (hexa name creation overflowed malloc buffer)
Change in GNU Prolog version 1.2.11 (Mar 2002):
* fix a problem under sparc/solaris using mmap (adding MAP_FIXED)
* fix a problem with gcc 3.0.x which always uses ebp in main()
* use -march=xxx gcc option instead of -mxxx for ix86
Change in GNU Prolog version 1.2.10 (Jan 2002):
* gplc now passes -L option to ld in the order of apparition
* gplc accepts meta-characters %p, %d,... in output file names
* include additional patch for sockets under win32 - due to
Brent Fulgham <brent.fulgham@xpsystems.com>
Change in GNU Prolog version 1.2.9 (Dec 2001):
* re-write Windows GUI Console in pure Win32 (no more MFC)
* adapt configure.in to work with autoconf 2.52
* add Prolog flag back_quotes and values {atom,chars,codes}_no_escape
* use a terminal recursion in FD arithmetic normalization
* fix bug in bind_variables/2, reported by:
Bowie Owens <owe043@phi-cq.vic.cmis.csiro.au>
* modify Ma2Asm mappers to use Y_OFFSET (from ENVIR_STATIC_SIZE)
* fix some bugs in the Wam debugger
* 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 sequences)
* simplify linedit: only apply to stdin
* now linedit is reentrant
* now linedit works with XFree keyboard encoding
* 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
* fix bug on Linux configured with --disable-regs
* add pipe to pl2wam stdin when called by consult/1
* fix bug in FD: forall is now recognized in .fd files
* fix bug in DCG: expand_term((a --> X), Y) is OK
* fix X paste problem in linedit
* simplify top_comp.c to better control include dirs in devel. mode
* specialized functions for create/update/delete choice points
* fix a bug in wam2ma (hexa name creation overflowed malloc buffer)
* include patch to support basic sockets under win32 - due to
Brent Fulgham <brent.fulgham@xpsystems.com>
* arithmetic functions and inlined built-ins use fast call
* specialized functions for switch_on_term_xxx
* modify pl2wam to generalize '$call_c' (add options)
Change in GNU Prolog version 1.2.8 (Oct 2001):
* fix bug - delete file created by mkstemp(2), patch from:
Salvador Abreu <spa@debian.org>
* space_args(true) now displays a space inside {}/1
* space_args(true) now displays a space after a comma (','/2)
Change in GNU Prolog version 1.2.7 (Sep 2001):
* add a --foreign-only option to pl2wam
* foreign/2 directives are ignored in byte-code mode (no fatal error)
* 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
* get rid of mktemp and tempnam calls (use mkstemp if available)
* fix a bug in fd_element_var/3 constraint
* fix bug in fd headers (fd_to_c.h not installed)
* fix a bug with unify_with_occurs_check/2
* fix bug on ix86 using ebp (add -fomit-frame-pointer in CFLAGS_MACHINE)
Change in GNU Prolog version 1.2.6 (Jan 2001):
* fix a bug with ! in dynamic code
* fix a bug in arithmetics
Change in GNU Prolog version 1.2.5 (Dec 2000):
* big modification (1 month) to optimize the execution speed
Change in GNU Prolog version 1.2.4 (Nov 2000):
* implement fast call (mainly for WAM functions)
* modify C->Prolog foreign interface to recover arguments space
* improve dynamic clause management and fix a bug (memory leak)
* fix _ symbol prefix problem for Free BSD
* no longer use dl_malloc on Linux but prevent MMAP using mallopt
Change in GNU Prolog version 1.2.3 (Sep 2000):
* full re-indentation of the sources for CVS
* added acos/asin to Prolog arithmetics
Change in GNU Prolog version 1.2.2 (Sep 2000):
* port to alpha/Linux - many thanks to
Alexander Diemand <ax@apax.net>
* port to alpha/OSF1
* port to mips/irix - many thanks to
Alexander Diemand <ax@apax.net>
* fix a bug in stty.c (use standard termios if present)
Change in GNU Prolog version 1.2.1 (Jul 2000):
* fix a bug in stty.c (use termio by default and else termios)
Change in GNU Prolog version 1.2.0 (Jul 2000):
* more customizable configuration/installation procedure
Change in GNU Prolog version 1.1.7 (Jul 2000):
* port for ix86/NetBSD - many thanks to
Brook Milligan <brook@nmsu.edu>
Change in GNU Prolog version 1.1.6 (Jun 2000):
* rename configuration file config.h by gp_config.h
* avoid to establish a connection at start to get the hostname
* fix a bug in the compiler about \\ inside quoted atoms
* fix a bug in dynamic clause retraction (memory leak)
* fix a bug in atom management (existing atoms eat mallocated space)
* added creation/1 and last_access/1 property to file_property/2
* start of native Win32 port
Change in GNU Prolog version 1.1.5 (Mar 2000):
* port for ix86/FreeBSD - many thanks to
Nicolas Ollinger <nollinge@ens-lyon.fr>
Change in GNU Prolog version 1.1.4 (Jan 2000):
* fix a bug in the byte-code loader (bad realloc computation)
* fix a bug in the malloc (used MMAP under Linux)
Change in GNU Prolog version 1.1.3 (Dec 1999):
* port for ix86/SCO - many thanks to
Clive Cox <clive@laluna.demon.co.uk> and
Edmund Grimley Evans <edmundo@rano.demon.co.uk>
* port for ix86/solaris - many thanks to
Andreas Stolcke <stolcke@speech.sri.com>
* fix a bug in the FD solver for X#\=C (if C is max(X))
* fix a bug with directory_files/2 (too many open files)
Change in GNU Prolog version 1.1.2 (Nov 1999):
* fix a bug in the compiler about \t in quoted atoms
* fix a bug in the scanner about 0'<character>
Change in GNU Prolog version 1.1.1 (Oct 1999):
* fix bug with popen/3
* update machine.c for struct sigcontext under Linux
Change in GNU Prolog version 1.1.0 (Oct 1999):
* fix a bug in the output of some extended characters in native-compilation
Change in GNU Prolog version 1.0.6 (Sep 1999):
* implementation of call_with_args
* fix a bug in sign/1 for arithmetic evaluation
Change in GNU Prolog version 1.0.5 (Jul 1999):
* fix a bug in foreign C calling Prolog on sparc
Change in GNU Prolog version 1.0.4 (Jul 1999):
* fix a bug in sparc compilation
* fix a bug in foreign code under sparc
* update pl_config.c to show which version is installed
Change in GNU Prolog version 1.0.3 (Jun 1999):
* add linedit test to avoid to re-echo an already buffered full-line
* fix bugs is sort/1
* fix bug in sleep/1 (incorrect behavior with a float)
* finish preliminary port to Cygwin (see file src/PROBLEMS)
* fix bug in FD solver (too much trail allocated due to bad vec_size)
* fix labeling first-fail to correspond to clp(FD)
* fix message from consult when pl2wam cannot be found
Change in GNU Prolog version 1.0.2 (Jun 1999):
* fix precision bug on floating constants
Change in GNU Prolog version 1.0.1 (Jun 1999):
* initial port for ix86/Cygwin (Win32) (to finish)
* 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)
* fix bug using egcs-1.1.2 (RedHat 6.0) (add a Stop_Prolog() fct)
* removed Configure directory (clashes with ./configure under WinXX)
* fix Linedit/Makefile.in (CFLAGS added)
* add 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)
* work release 1.0.1
* fix bug --disable-regs works now for solaris
* optimize FD equations (math_supp.c) avoid qsort sometimes
* fix bug in installation procedure (Html doc installation)
Change in GNU Prolog version 1.0.0 (Apr 1999):
* 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))
* 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)
Change in GNU Prolog version 0.9.0 (Mar 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)
* add in-place installation (modify configure.in and Makefile.in)
* add copyright headers in source files
* rewrite all solutions built-in predicates (in C)
* add in-place sorts
* rewrite DCG translations
* fix compiler bug in wam2ma (atom using \xHH\ not correctly handled)
* rewrite sorts built-in predicates (in C)
* Calypso (beta 7) becomes GNU Prolog 0.9.0
change command names (calypso -> gprolog, plcc -> gplc,...)
copyright messages (--version),...
Change in Calypso version 1.0-beta7 (Mar 1999):
* fail/0 caused an existence_error under the debugger
* user/built_in/built_in_fd not recognized by load/1
* Calypso version 1.0-beta7 ready for internal use