Dear SWI-Prolog user,
I have uploaded SWI-prolog 8.1.17. This version provides some new
functionality as well a couple of critical bugfixes. Highlights:
Fixed three crashes related to tabling and one related to temporary
modules as used by Pengines (and thus SWISH).
Added tabling with call subsumption, reusing answers from more
general (tabled) goals. Still suffering from severe performance
Allow using constraints as a guard for filtering messages in
Fixed several issues related to profiling
When using BSD editline (libedit) as command line editor, provide
C-r to search in old commands.
PlDoc: allow referencing local labels using
Enjoy — Jan
SWI-Prolog Changelog since version 8.1.16
FIXED: Issue#526: possible crash in trie_gen/2,3. Farbrizio Riguzzi.
MODIFIED: catch_with_backtrace/3 now captures the backtrace without
direct references to clauses such that the backtrace can be printed
reliably in a different context.
DEBUG: Dump Prolog stack on fatal errors (in safe mode, i.e., without
arguments but with PC and clause info).
ADDED: thread_get_message/1-3: allow more selective matching of terms
FIXED: reset_profiler/0. Needs to clear
environments. Lacking to do so can cause crashes as well as wrong
FIXED: Crash in thread cleanup if the OS thread could not be created
(typically due to a resource limit)
XSB: fmt_write/2,3: cache format translation.
XSB: Provide consult/1 from library(consult) and slash/1 from
TEST: Added XSB subsumptive tabling tests
ADDED: Prolog flag `table_subsumptive’ to select (default) subsumptive
ADDED: Simple implementation for subsumptive tabling. Handles reuse
of incomplete tables, but often resulting in quadratic complexity.
FIXED: is_most_general_term/1: failed to clear marks, causing
FIXED: Calling incremental tabling for subsumptive tabling.
DOC: Fixed limit/2 doc for Count argument.
FIXED: Wrapping meta-predicates. Abramo Bagnara.
FIXED: db_sync(gc(always) to really always write the persistent db.
- FIXED: Avoid live lock in
fork()due to profile signals that
prevent fork() to complete. Edward Schwartz.
- ADDED: Implement C-r: incremental search in the history. This also
exposes more of the libedit low level functionality to Prolog,
notably reading raw input and pushing characters into the input buffer.
- ADDED: Allow for
[Title](#label)to reference a local anchor.