The GNU Prolog for Java project would like to announce the release of version 0.2.6.
This is a bugfix release and fixes a fairly major bug in the use of the assert[az], abolish and retract in fairly normal use cases. #31550
Prolog for Java is a java library (gnu.prolog) that allows Prolog code to be executed from within java.
This allows for the use of Prolog to solve the problems which Prolog is particularly suited to while Java is used for other components.
It can be downloaded from http://ftp.gnu.org/gnu/gnuprologjava/ or by
ftp ftp://ftp.gnu.org/gnu/gnuprologjava/
http://ftpmirror.gnu.org/gnuprologjava/ will automatically redirect to a nearby mirror.
GNU Prolog for Java is licensed under the LGPLv3 or later.
The project website is: http://www.gnu.org/software/gnuprologjava/
Version 0.3.0 is in progress and will bring among other things a slightly nicer API.
Version 0.2.5 is almost into Debian.
NEWS since the last release:
0.2.6 2011-01-06
Bugfix release: fix major bug in assert[az], retract and abolish #31550
Throw the correct errors in compare
A fairly major bug in assetz/abolish/retract etc. where due to cached code not being updated correctly they would not correctly update predicates was reported https://savannah.gnu.org/bugs/?31550 and has since been fixed in current newmaster.
If there are people who are using these predicates and experiencing bugs because of this then I will do a point release. If not then I will push out a release which fixes this in 0.3.0.
Please comment on the bug report if you would like a point release done.
The GNU Prolog for Java project is proud to announce the release of
version 0.2.5.
This is our first official release since 0.1.0 on 2000-11-12.
Prolog for Java is a java library (gnu.prolog) that allows Prolog code
to be executed from within java. This allows for the use of Prolog to
solve the problems which Prolog is particularly suited to while Java is
used for other components.
It can be downloaded from http://ftp.gnu.org/gnu/gnuprologjava/ or by
ftp ftp://ftp.gnu.org/gnu/gnuprologjava/
http://ftpmirror.gnu.org/gnuprologjava/ will automatically redirect to
a nearby mirror.
GNU Prolog for Java is licensed under the LGPLv3 or later.
The project website is: http://www.gnu.org/software/gnuprologjava/
NEWS since the last release:
0.2.5 2010-07-28
Conforms to ISO/IEC DIS 13211-1 : 1995 bar two minor bugs.
There is now a (texinfo) manual and the readme.txt has been updated.
The demo package now contains an example of the use of the API.
The public key of the key signing key is in the sources.
Term classes now have working .toString() functions (which use
TermWriter.toString(Term))
The Inria test suite provides an easily extensible test suite for
testing standards compliance.
This supplements the vanilla test suite both of which can be found
here: http://pauillac.inria.fr/~deransar/prolog/suites.html
NONISO features added:
ensure_loaded/1 predicate can be used anywhere
If ':- term' is used and term is not a directive then this will be treated as
':- intiailization(term)'.
random(L) predicate evaluates to a random number i such that
0 =< i < L
GNU Prolog for Java is now licensed under the LGPLv3 rather than the
LGPLv2.
Interpreter's context methods have been deprecated.
The source now includes gnu.getopt
The Interpreter#runOnce(Term) method added to simplify the case where
the user only wishes to get the first answer from Prolog.
Added NumericTerm as an abstract parent of FloatTerm and IntegerTerm
Two outstanding bugs in standards compliance are:
#30568 (inria tests on findall's throwing of type_errors fails)
and
#30335 (inria tests on arg's unification of variables inside the
compound term fail)
Other bugs
#30630 Deadlock may occur if multiple threads operate on the
same environment
#30780 Unicode input breaks the parser (it gets stuck in an
infinite loop).
0.2.x
Michiel Hendriks wrote many additional features and added support for
many more predicates as well as doing a lot of work towards ISO
Prolog part 1 compliance.
This includes: get_time/1, stamp_date_time/3, date_time_stamp/2,
date_time_value/3, format_time/3, format_time/4, parse_time/2,
parse_time/3, trace/0, notrace/0, tracing/0, spy/2, nospy/1,
nospyall/0, various predicates for dialogs, java_to_string/2,
java_classname/2, listing/0, listing/1, compare/3, stacktrace/1,
current_functor/2, uuid/1, uuid/2, uuid_compare/3, uuid_version/2,
uuid_variant/2
0.2.0 2009-03-04
Various changes, bug fixes and additions.
It now conforms to the "vanilla" test suite (with a few minor changes
to some tests).
All ISO Prolog predicates are supported. char_conversion is
implemented but not used.
Added support for tracing/spying predicates
The GNU Prolog for Java project is proud to announce the release of the beta version of our 0.2.5 release.
Prolog for Java is a java library (gnu.prolog) that allows Prolog code to be executed from within java. This allows for the use of Prolog to solve the problems which Prolog is particularly suited to while Java is used for other components.
It can be downloaded from http://alpha.gnu.org/gnu/gnuprologjava/ or by ftp ftp://alpha.gnu.org/gnu/gnuprologjava/ and is licensed under the LGPLv3.
The project website is: http://www.gnu.org/software/gnuprologjava/
The main change since alpha is that we now have a manual.
NEWS since the last release:
0.2.5 beta 2010-07-28
Conforms to ISO/IEC DIS 13211-1 : 1995 bar two minor bugs.
There is now a (texinfo) manual.
The demo package now contains an example of the use of the API.
The public key of the key signing key is in the sources.
Term classes now have working .toString() functions (which use TermWriter.toString(Term))
The Inria test suite provides an easily extensible test suite for testing standards
compliance.
This supplements the vanilla test suite both of which can be found here: http://pauillac.inria.fr/~deransar/prolog/suites.html
NONISO features added:
ensure_loaded/1 predicate can be used anywhere
If ':- term' is used and term is not a directive then this will be treated as
':- intiailization(term)'.
random(L) predicate evaluates to a random number i such that 0 =< i < L
GNU Prolog for Java is now licensed under the LGPLv3 rather than the LGPLv2.
Interpreter's context methods have been deprecated.
The source now includes gnu.getopt
The Interpreter#runOnce(Term) method added to simplify the case where the
user only wishes to get the first answer from Prolog.
Added NumericTerm as an abstract parent of FloatTerm and IntegerTerm
Two outstanding bugs in standards compliance are:
#30568 (inria tests on findall's throwing of type_errors fails) and
#30335 (inria tests on arg's unification of variables inside the compound term fail)
Other bugs
#30630 Deadlock may occur if multiple threads operate on the same environment
#30780 Unicode input breaks the parser (it gets stuck in an infinite loop).
0.2.x
Michiel Hendriks wrote many additional features and added support for many more
predicates as well as doing a lot of work towards ISO Prolog part 1 compliance.
This includes: get_time/1, stamp_date_time/3, date_time_stamp/2, date_time_value/3,
format_time/3, format_time/4, parse_time/2, parse_time/3, trace/0, notrace/0,
tracing/0, spy/2, nospy/1, nospyall/0, various predicates for dialogs,
java_to_string/2, java_classname/2, listing/0, listing/1, compare/3, stacktrace/1,
current_functor/2, uuid/1, uuid/2, uuid_compare/3, uuid_version/2, uuid_variant/2
0.2.0 2009-03-04
Various changes, bug fixes and additions.
It now conforms to the "vanilla" test suite (with a few minor changes to some tests).
All ISO Prolog predicates are supported. char_conversion is implemented but not used.
Added support for tracing/spying predicates
In our first release since 0.1.0 (2000-11-12) the GNU Prolog for Java project is proud to announce the release of an alpha version of our 0.2.5 release.
Prolog for Java is a java library (gnu.prolog) that allows Prolog code to be executed from within java. This allows for the use of Prolog to solve the problems which Prolog is particularly suited to while Java is used for other components.
It can be downloaded from http://alpha.gnu.org/gnu/gnuprologjava/ or by ftp ftp://alpha.gnu.org/gnu/gnuprologjava/ and is licensed under the LGPLv3.
The project website is: http://www.gnu.org/software/gnuprologjava/
NEWS since the last release:
0.2.5 alpha 2010-07-28
Conforms to ISO/IEC DIS 13211-1 : 1995 bar two minor bugs.
The demo package now contains an example of the use of the API.
The public key of the key signing key is in the sources.
Term classes now have working .toString() functions (which use TermWriter.toString(Term))
The Inria test suite provides an easily extensible test suite for testing standards
compliance.
This supplements the vanilla test suite both of which can be found here: http://pauillac.inria.fr/~deransar/prolog/suites.html
NONISO features added:
ensure_loaded/1 predicate can be used anywhere
If ':- term' is used and term is not a directive then this will be treated as
':- intiailization(term)'.
random(L) predicate evaluates to a random number i such that 0 =< i < L
GNU Prolog for Java is now licensed under the LGPLv3 rather than the LGPLv2.
Two outstanding bugs in standards compliance are:
#30568 (inria tests on findall's throwing of type_errors fails) and
#30335 (inria tests on arg's unification of variables inside the compound term fail)
0.2.x
Michiel Hendriks wrote many additional features and added support for many more
predicates as well as doing a lot of work towards ISO Prolog part 1 compliance.
This includes: get_time/1, stamp_date_time/3, date_time_stamp/2, date_time_value/3,
format_time/3, format_time/4, parse_time/2, parse_time/3, trace/0, notrace/0,
tracing/0, spy/2, nospy/1, nospyall/0, various predicates for dialogs,
java_to_string/2, java_classname/2, listing/0, listing/1, compare/3, stacktrace/1,
current_functor/2, uuid/1, uuid/2, uuid_compare/3, uuid_version/2, uuid_variant/2
0.2.0 2009-03-04
Various changes, bug fixes and additions.
It now conforms to the "vanilla" test suite (with a few minor changes to some tests).
All ISO Prolog predicates are supported. char_conversion is implemented but not used.
Added support for tracing/spying predicates
There are only 7 failing standards compliance tests to pass before I will do the Alpha release of GNU Prolog for Java version 0.2.5.
I would like to thank Michiel Hendriks for writing a lot of the code that makes this possible.
Also the test suites from http://pauillac.inria.fr/~deransar/prolog/suites.html by J.P.E Hodgson have been immensely helpful in finding bugs and unfinished features.