DES 3.3 Released

[email protected]
Newsgroups gmane.comp.ai.prolog.swi
Message-ID <[email protected]>
[Apologies for multiple receptions]


Hello.

This is a mail just for informing that the new release 


  Datalog Educational System version 3.3 

  http://des.sourceforge.net


has been launched on July, 12th, 2013, and ported to


  SWI-Prolog 6.2.6


The main novelty of the current release is the ACIDE bundle 

which includes a new version 0.11 featuring a database panel

for managing both DES databases (default $des and external 

databases) and regular ODBC connections (tested with MySQL 

and DB2). In addition, it has been enhanced w.r.t. last 

bundle (including version 0.9) and fixes several bugs. With 

respect to DES itself, performance has been improved a bit 

(though really noticeable for some queries), also providing 

commands for enabling and disabling some optimizations. 

Nulls can be disabled for trying pure Datalog (also 

disabling duplicates). Hypothetical rules enjoy extended 

support for negation.


A complete list of enhancements, changes and fixed bugs is 

attached to the end of this message. 

Please, see http://des.sourceforge.net for details.


  Best regards.




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

Fernando Saenz Perez

Profesor Titular de Universidad / Associate Professor

Home Page: http://www.fdi.ucm.es/profesor/fernan

Tel: + 34 913947642. Fax: + 34 913947547

Despacho / Office: 435 (4ª planta / 4th floor)

Dept. Ingenieria del Software e Inteligencia Artificial / 

Department of Software Engineering and Artificial 

Intelligence

Universidad Complutense de Madrid

Facultad de Informatica

C/Profesor Jose Garcia Santesmases, s/n

E - 28040 Madrid. Spain


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




Version 3.3 of DES (released on July, 12th, 2013)


* Enhancements:

  o ACIDE bundle includes a new version 0.11 featuring a 

    database panel for managing both DES databases (default 

    $des and external databases) and regular ODBC connections 

    (tested with MySQL and DB2). In addition, it has been 

    enhanced w.r.t. last bundle (including version 0.9) and 

    fixes several bugs 

  o Nulls can be disabled for trying pure Datalog. Also, 

    disabling nulls enhances performance a bit (most likely, 

    not noticeable)

  o Upgraded performance. Some tweaks for performance 

    optimization

  o Extended support for negation in hypothetical rules

  o Help listings (commands and built-ins) restricted to a 

    limited width

  o Added new ISO built-in infix operator mod

  o Redefinition of built-in comparison operators are 

    avoided

  o New commands:

    - /display_nbr_of_tuples Display whether display of the 

      number of computed tuples is enabled

    - /display_nbr_of_tuples Switch Enable or disable 

      display of the number of computed tuples (on or off, 

      resp.)

    - /nulls Display whether nulls are enabled

    - /nulls Switch Enable or disable nulls (on or off, 

      resp.) If nulls are disabled, calls to outer join 

      predicates included in already-loaded rules will fail, 

      and attempts to use outer joins will not succeed. This, 

      coupled with /duplicates off (as by default) allows to 

      play with pure Datalog with negation and arithmetic 

      built-ins

    - /optimize_cc Display whether complete computations 

      optimization is enabled

    - /optimize_cc Switch Enable or disable complete 

      computations optimization (on or off, resp. and enabled 

      by default) Fixpoint iterations and/or extensional 

      database retrievals might been saved 

    - /optimize_ep Display whether extensional predicates 

      optimization is enabled

    - /optimize_ep Switch Enable or disable extensional 

      predicates optimization (on or off, resp. and enabled by

      default). Fixpoint iterations and extensional database 

      retrievals are saved for extensional predicates as a 

      single linear fetching is performed for computing them

    - /optimize_edb Display whether extensional database 

      optimization is enabled

    - /optimize_edb Switch Enable or disable extensional 

      database optimization (on or off, resp. and enabled by 

      default). Extensional database retrievals are saved for 

      the extensional part of the deductive database

    - /optimize_nrp Display whether non-recursive predicates

      optimization is enabled

    - /optimize_nrp Switch Enable or disable non-recursive 

      predicates optimization (on or off, resp. and enabled by

      default). Memoing is only performed for top-level goals

    - /optimize_st Display whether stratum optimization is 

      enabled

    - /optimize_st Switch Enable or disable stratum 

      optimization (on or off, resp. and enabled by default). 

      Extensional table lookups are saved for non-recursive 

      predicates calling to recursive ones, but more tuples 

      might be computed if the non-recursive call is filtered,

      as in this case an open call is submitted instead (i.e.,

      not filtered)

    - /write String Write String to console. String can 

      contain system variables as $stopwatch$ (which holds the

      current stopwatch time) and $total_elapsed_time$ (which 

      holds the last total elapsed time) (See Subsection 

      5.13.11.1 for system variables)

    - /writeln String As /write but adding a new line at the

      end of the string

    - /write_to_file File String Write String to File. If 

      File does not exist, it is created; otherwise, previous 

      contents are not deleted and String is simply appended 

      to File. String can contain system variables as 

      $stopwatch$ (which holds the current stopwatch value) 

      and $total_elapsed_time$ (which holds the last total 

      elapsed time)

    - /writeln_to_file File As /write_to_file but adding a 

      new line

* Changes:

  o Behaviour of /compact_listings Switch is immediate 

    (neither trailing blank line when enabling compact 

    listings nor absent blank line when disabling)

  o SQL-to-Datalog compilations for the division are not 

    displayed unless development listings are enabled, 

    analogously to outer join operations

  o Operator \/ in hypothetical literals has been changed to

    the more appropriate /\ 

* Fixed bugs:

  o During computing implications, some rules were not 

    memorized correctly

  o Assumed rules in hypothetical queries and rules were not

    tested for safety

  o Parsing of /shell failed for arguments containing a 

    comma. Now, the characters following the command are 

    directly sent to the shell

  o Attributes in where conditions were not parsed in the 

    command /des

  o External relations were warned as non-existing when 

    processing a SQL statement with the command /des

  o Some commands did not accept upper case switches

  o Closing an ODBC connection broke external metadata 

    retrieval for subsequent connections

  o The command /listing duplicated the rules for persistent

    predicates

  o The command /rm File (with synonym /del) did not find 

    the file to remove for SICStus distros

  o Missing display of top-level query for exploded queries 

    in normal listings

  o When show_sql was enabled, some tasks related to 

    persistent predicates failed, as retracting rules

  o Hypothetical Datalog queries for persistent predicates 

    did'nt retract assumed rules and facts
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.