Ann: SWI-Prolog 5.7.15

View: New views
1 Messages — Rating Filter:   Alert me  

Ann: SWI-Prolog 5.7.15

by Jan Wielemaker-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

I've uploaded SWI-Prolog 5.7.15. Actually this was planned to be 5.8.0,
but there are so many changes that that is a bit too high risk.
Highlights:

    * Added a fast C-based library(uri).  This provides roughly the
    same functionality as library(url), but the interface is very
    different, the library is much faster and it tries to be liberal
    with respect to officially illegal URIs.  This library is now in
    use with the various RDF libraries.  Later, it will be used by
    all internal libraries.  library(url) will become a deprecated
    library.  The new library is part of the clib package.

    * Updated the RDF/XML parser: make it faster and removed some code
    to support outdated RDF constructs.  Depending on the style of the
    RDF source, it can be up to about twice as fast.

    * Added library(semweb/rdf_turtle_writer) to write RDF/Turtle.  It
    can write in two modes: pretty and canonical.  The latter is not
    yet finished, but already useable for writing diff-friendly RDF
    for many practical RDF graphs.

    * Lots of updates to the Turtle reader, making it faster, enhancing
    some of its error-messages (still lots to desire here) and making
    it more flexible on error handling (allowing to choose between
    abort-with-error and skip-bad-description).

    * Include work-in-progress on reviving the stack-shifter.  By
default,
    this isn't compiled, but re-integrating the stack-shifter caused
some
    changes for the current stack-handling as well.

    * Fixed a few memory-leaks.  Most are one-time losses, but one in
    PL_unify_term() can affect many applications, notably those managing
    wide-characters.

    * Various clp(fd) enhancements.

    * Lots of small stuff.

Short-term plans:

        - Base 5.8.0 on 5.7.15
        - Complete stack-shifter in 5.9.x


        Enjoy --- Jan

================================================================

 * FIXED: Profiling information about garbage collector

 * FIXED: Use :- debug(Topic). where Topic is not yet defined in
directives.

 * FIXED: Ssprintf() and friends: %ld is a long (not intptr_t)

 * FIXED: Bug#423: Interaction between discontiguous and thread_local

 * ADDED: library(uri), providing a much faster and modern API to
handling
   URIs and IRIs.

 * ADDED: CLP(FD): New constraint: scalar_product/4, generalising sum/3.

 * ADDED: Allow for :- module(_, Exports); compatible to Ciao.

 * FIXED: Generate error when loading a file holding a plain variable or
   a term that is expanded into a variable.

 * ADDED: Allow processing :- encoding(Encoding) before the
   :- module directive.

 * FIXED: Bug#420: Allow term_expansion on the first term to
   modify/create/delete the module header.  Peter Schachte.

 * ENHANCED: CLP(FD): Faster linear inequalities.

 * ADDED: CLP(FD): New global constraint "circuit/1", constraining a
list
                   of variables to form a Hamiltonian circuit.

 * FIXED: Bug#417: =@=/2 (variant/2) if left and right share variables.
   Feliks Kluzniak

 * ENHANCED: CLP(FD): Faster variable selection for "ff" labeling
strategy.

 * ENHANCED: library(simplex): Use a dual algorithm ("algorithm
      alpha-beta" in Papadimitriou and Steiglitz) for transportation and
      assignment problems, instead of a streamlined simplex algorithm.
      The arising max-flow problem is solved with Edmonds-Karp, itself a
      dual algorithm. The implementation is now much more scalable.

 * MODIFIED: Handling of the unknown flag: make it inherit over modules
and
   properly implement the `warning' option.

 * ENHANCED: CLP(FD): Generalised arc-consistency of
global_cardinality/2
         to other cases. In particular, global_cardinality/2 with
         occurrences between 0 and 1 is now as strong as all_distinct/1.

 * CLEANUP: Bug#413: Complete 'make distclean'.  Feliks Kluzniak


_______________________________________________
SWI-Prolog mailing list
SWI-Prolog@...
https://mailbox.iai.uni-bonn.de/mailman/listinfo.cgi/swi-prolog