Re: SWI-Prolog Digest, Vol 35, Issue 22
Jan Wielemaker <[email protected]>
| Newsgroups | gmane.comp.ai.prolog.swi |
|---|---|
| Message-ID | <[email protected]> |
On 08/13/2013 06:54 AM, [email protected] wrote: > Hi! > > With new Prolog 6.5.1 old problem > (Windows 7, 64-bit) persist: Sad to hear. library(jpl) prints which directories it adds to the search path. Do they look fine? You *might* also get away by adding all Java folders holding DLLs to %PATH%. If all these fails, you need a Windows DLL dependency walker to diagnose the problem or ask M$ to provide sensible error feedback through their APIs and/or decent tools to deal with these issues. Otherwise, this is a `works for me'. Cheers --- Jan > > Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Program > Files\swipl\bin\jpl.dll: Can't find dependent libraries > at java.lang.ClassLoader$NativeLibrary.load(Native Method) > at java.lang.ClassLoader.loadLibrary1(Unknown Source) > at java.lang.ClassLoader.loadLibrary0(Unknown Source) > at java.lang.ClassLoader.loadLibrary(Unknown Source) > at java.lang.Runtime.loadLibrary0(Unknown Source) > at java.lang.System.loadLibrary(Unknown Source) > at jpl.JPL.loadNativeLibrary(JPL.java:100) > at jpl.fli.Prolog.<clinit>(Prolog.java:85) > at jpl.Query.open(Query.java:286) > at jpl.Util.textToTerm(Util.java:162) > at jpl.Query.<init>(Query.java:198) > at Family.main(Family.java:12) > > Even simplest JPL examples are not working (see attachment) > > With best regards > Ted Szuba > //////////////////////////////////////////////////////////////////////////////////////////// > > > -----Oryginalna wiadomość----- From: > [email protected] > Sent: Tuesday, August 13, 2013 5:25 AM > To: [email protected] > Subject: SWI-Prolog Digest, Vol 35, Issue 22 > > Send SWI-Prolog mailing list submissions to > [email protected] > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.iai.uni-bonn.de/mailman/listinfo.cgi/swi-prolog > or, via email, send a message with subject or body 'help' to > [email protected] > > You can reach the person managing the list at > [email protected] > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of SWI-Prolog digest..." > > > Today's Topics: > > 1. Re: Is keysort/2 stable? (Jan Wielemaker) > 2. Ann: SWI-Prolog 6.5.1 (Jan Wielemaker) > 3. Re: Ann: SWI-Prolog 6.5.1 (Michael Hendricks) > 4. Min of all solutions (Diego Rafael Di Berardino) > 5. Re: Min of all solutions (Richard A. O'Keefe) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Mon, 12 Aug 2013 12:00:13 +0200 > From: Jan Wielemaker <[email protected]> > To: Boris Vassilev <[email protected]> > Cc: Prolog mailing list <[email protected]> > Subject: Re: [SWIPL] Is keysort/2 stable? > Message-ID: <[email protected]> > Content-Type: text/plain; charset="UTF-8"; format=flowed > > I confess that the docs for keysort/2 are poor. Still, it says: > > "The order of multiple elements that have the same Key is not changed." > > Cheers --- Jan > > On 08/12/2013 11:56 AM, Boris Vassilev wrote: >> Hello, >> >> a short question: is keysort/2 stable? In other words, is there a >> guarantee >> that elements with equal keys in the input list of pairs will have the >> same >> order in the output list? This information might be somewhere in the >> manual >> already but I could not find it. >> >> Thank you all, >> Boris >> -------------- next part -------------- >> HTML attachment scrubbed and removed >> _______________________________________________ >> SWI-Prolog mailing list >> [email protected] >> https://lists.iai.uni-bonn.de/mailman/listinfo.cgi/swi-prolog >> > > > > ------------------------------ > > Message: 2 > Date: Mon, 12 Aug 2013 22:43:14 +0200 > From: Jan Wielemaker <[email protected]> > To: "[email protected]" > <[email protected]> > Subject: [SWIPL] Ann: SWI-Prolog 6.5.1 > Message-ID: <[email protected]> > Content-Type: text/plain; charset="UTF-8" > > Hi, > > I've uploaded SWI-Prolog 6.5.1. There are a lot of changes. Highlights: > > - Detection of `semantic singletons' by the compiler. This proofs > to result in a quite high percentage of real bugs. My rough > estimate is about 1/3th! And this is on established code! > - Singleton detection with quasi quotations (do not claim a > singleton of a QQ introduces a reference to the singleton > in its expansion). > - prolog_load_context/2 provides access to variable names. > - term_expansion/4 and goal_expansion/4 to allow converting > source layout information. This goes through most of the > compiler toplevel, but isn't actually used yet. > - halt/0 can now be called from threads. Various fixes to > program termination, notably for xpce on Windows. > - JPL dll hassle is hopefully resolved. > - Cygwin port is updated. > - Lots of small stuff and cleanup. > > Not sure where to go with the stable version. I first thought just > cherry-picking the clear fixes, but there are so many that I consider > updating to the devel version after the devel version proofs to be > stable. Please report issues with the above changes. > > Enjoy --- Jan > > > ======================================== > SWI-Prolog Changelog since version 6.5.0 > ======================================== > > * DOC: keysort/2 > > * ENHANCED: CLP(FD): isolate global_cardinality/2 from user attributes. > Before: > > %?- put_attr(A, edges, [a]), global_cardinality([A,B,C], [0-_,1-_]). > %@ false. > > Now: > > %?- put_attr(A, edges, [a]), global_cardinality([A,B,C], [0-_,1-_]). > %@ put_attr(A, edges, [a]), > %@ A in 0..1, > %@ global_cardinality([A, B, C], [0-_G4383, 1-_G4389]), > %@ B in 0..1, > %@ _G4383 in 0..3, > %@ C in 0..1, > %@ _G4389 in 0..3. > > * FIXED: Dummy empty warning if no compiler warning refers to a variable. > > * ENHANCED: CLP(FD): Better isolation from user-defined variable > attributes. Example: > > :- use_module(library(clpfd)). > > distinct(Vars) :- Vars = [A,B,C,D], all_distinct(Vars), [A,B,C] > ins 0..2. > > Before: > > %?- put_attr(X, edges, [x]), Vars = [X|_], distinct(Vars). > %@ false. > > Now: > > %?- put_attr(X, edges, [x]), Vars = [X|_], distinct(Vars). > %@ Vars = [X, _G1856, _G1859, _G1862], > %@ put_attr(X, edges, [x]), > %@ X in 0..2, > %@ all_distinct([X, _G1856, _G1859, _G1862]), > %@ _G1856 in 0..2, > %@ _G1859 in 0..2. > > That is, users can freely use the "edges" attribute themselves. > > * ENHANCED: CLP(FD): Remove branch singletons. > > * FIXED: Inlined unification must revert to normal unification if occurs > check is active. > > * TEST: compensate for optimization > > * FIXED: Mixup in truth of == and \== predictable warnings. Keri Harris. > > * ADDED: Move multiton detection into the compiler, so this compiles > clean: == t :- (v(_A);v(_A)). == > > * FIXED: Detection of `multitons' (broken after singleton detection > extension for dealing with quasi quotations). > > * FIXED: myplus/4 in bounds.pl. Note that bounds is deprecated in > favour or library(clpfd). Markus Triska. > > * ENHANCED: :- at_halt/1 is now term-expanded, such that reloading the > file does not re-register the hook. > > * FIXED: Apply changes that where missed due to a git conflict > > * UPDATED: Handle new PL_on_halt() interface > > * MODIFIED: Program termination: - at_halt/1 handlers can veto > termination of halt/0 by calling > cancel_halt/1. - PL_at_halt() handlers now have a declared > return type. In > the future, they will be able to cancel termination by > returning a non-zero status. Now a warning is printed. - > halt/1 and PL_halt() can be called from any thread. > > * FIXED: set_stream/2 issues with recent patch > > * ENHANCED: safe_goal/1, various enhancements: - Distinguish undefined > predicates - Deal with library meta-predicates (security fix) - > Module aware call/N support - Print context of encountered problem > > * CLEANUP: Use DCG // notation for declarations > > * FIXED: license/1: list known licenses (found by singleton analysis) > > * ENHANCED: read_term/3: singleton detection with quasi > quotations. Variables appearing only ones are searched in the quasi > quotation results. If found there, they are no real singletons. > > * ADDED: library(sandbox): added a lot of safe primitives. > > * FIXED: safe_goal/1: Catch instantiation_error when trying to proof > safety of a general goal. > > * MODIFIED: Make set_stream/2 behave sensibly on stream pairs. Dani?l > de Kok. > > * CLEANUP: Implementation of set_stream/2. > > * ADDED: Singleton checking inside \+ > > * DOC: var_branches style check > > * CLEANUP: Removed two useless assignments > > * FIXED: nb rbtrees (singleton) > > * MODIFIED: Setting style_check/1 and expects_dialect/1 in ~/.plrc > changes the default for the session. The settings used to be > scoped to the file. This scoping is now controlled by a new option > =scope_settings= to load_files/2. > > * ADDED: style_check/1: ?- style_check(?(Style)). to return active > style checks on backtracking. > > * DOC: term_expansion/4, etc. > > * DOC: Document extended singleton warnings > > * DOC: style_check/1 new =no_effect= option > > * DOC: user term_expansion is followed by DCG! > > * CLEANUP: Avoid new warnings in test cases. Test cases sometimes use > ugly code by design ... > > * ADDED: compiler warnings for BIPS that have no effect and singleton > variables in branches (semantic singletons). > > * ADDED: Support for warning messages from the compiler > > * ADDED: Provide prolog_load_context/2 =variable_names= and implemented > goal/term expansion with 4 arguments to process layout information. > > * FIXED: Default handling in setting (spotted by variable balance > checking) > > * CLEANUP: some documentation glitches > > * ADDED: New style-check options. We will include these into the stable > branch to avoid warnings on code calling style_check/1. > > * TEST: Fixed test code for timeout handling. > > * CLEANUP: Removed bogus test > > * FIXED: Remove meta_predicate/1 declaration for '|'/2. This is since > long not a predicate anymore. > > * CLEANUP: Use '$type_error'/2. > > * FIXED: Colourise [:|+] meta-declaration. > > * CLEANUP: Rename $-predicates in DCG expander. This is not needed since > this code is in a module. Also removed a lot of outdated comments > and added some new ones. > > * FIXED: base32//1: Singleton I3 > > * CLEANUP: library(clpp/bounds): singletons. Not sure whether this > was intended. > > * CLEANUP: Branch singletons > > * CLEANUP: Unification against unused variable > > * CLEANUP: In DCG, \+ \+ {...} leads to useless unifications. We now > use { \+ \+ G }. That remains silent. Eventually, this can (and > should) be improved in the DCG compiler. > > * FIXED: Emulated shell commands for non-atom arguments. > > * FIXED: library(prolog_pack): parsing of versions with * in them. > > * FIXED: Pass thread-reference in all branches > > * FIXED: library(prolog_colour) to colour "..." terminals properly > > * PORT: Cygwin: install package shared objects in the right > location. Corinna Vinschen. > > * PORT: Updated Cygwin port by Corinna Vinschen > > * FIXED: make/0: avoid loading files twice. Paulo Moura. > > * FIXED: PL_thread_engine_attach() did not initialise the thread > locale. Carlo Capelli. > > * FIXED: Make sure the config var SO_PATH is set to PATH in Windows, > and not WINEPATH. > > * CLEANUP: Avoid using SO_PATH for two different purposes > > * FIXED: DCG argument of phrase_from_stream/2 is not identified as such > (meta_predicate/1). > > > > ========= > Package R > ========= > > * FIXED: Mixup of Ruo/Ro variables in r_lines/6 > > =============== > Package archive > =============== > > * PORT: Deal Win64 off_t handling > > =========== > Package chr > =========== > > * ADDED: style_check(-no_effect) to compensate for some unifications > that have no effect. Suggests that is some room for optimization. > > * CLEANUP: Avoid (extended) singleton warnings. > > * FIXED: delete_first_ht/3: Not only compute load, but also update it. > > ============ > Package clib > ============ > > * UPDATED: Handle new PL_on_halt() interface > > * PORT: Cygwin updates by Corinna Vinschen > > =========== > Package cpp > =========== > > * DOC: Document PREDICATE0() and NAMED_PREDICATE() > > * ADDED: PREDICATE0(name) as alternative to PREDICATE(name, 0) that > avoids unused parameter warnings. > > * MODIFIED: NAMED_PREDICATE() takes a string as name. > > * FIXED: PREDICATE() macro issues > > * ADDED: Macros NAMED_PREDICATE() and NAMED_PREDICATE_NONDET() to > allow defining predicates that have a name that cannot be expressed > as a C identifier. This patch also casts unused variables to (void) > to avoid warnings. With help from Carlo Capelli. > > ============ > Package http > ============ > > * CLEANUP: More elegant implementation for computing byte-length > in encoding > > * CLEANUP: Branch singletons > > * CLEANUP: Another branch singleton. > > * FIXED: Singleton in interactive_httpd->authorise causes poor error > message. > > * CLEANUP: Removed detection of unused OpenID NS > > * INSTALL: Avoid double installation of shared objects. Corinna Vinschen. > > * DOC: Improved documentation of cookie handling > > > =========== > Package jpl > =========== > > * PORT: Use win_add_dll_directory/1 and generalise the search a bit > > ============= > Package pldoc > ============= > > * CLEANUP: Avoid semantic singleton message > > ============== > Package plunit > ============== > > * FIXED: Only share variables between options and body to maintain > first-var and singleton properties. > > * CLEANUP: Singletons > > ============== > Package semweb > ============== > > * FIXED: Avoid unlocking the RDF store directory twice. > > * FIXED: rdfe_undo (bug found by balanced var check) > > * FIXED: Loading Turtle from a stream did not reset the stream encoding. > > * FIXED: Detecting subjects for turtle writer. > > ============= > Package space > ============= > > * FIXED: sem_time_candidate > > * FIXED: owl_time_xsd_candidate/3 error spotted by singleton detection. > > =============== > Package windows > =============== > > * CLEANUP: Do not ignore return values and delete dead code. > > ============ > Package xpce > ============ > > * FIXED: Locking issue that causes long delays on halt if xpce is > running in separate thread. > > * FIXED: Two new singleton warnings (one was a bug). > > * FIXED: Priority issue in GUI term pretty printer > > * UPDATED: Handle new PL_on_halt() interface > > * ENHANCED: Allow cancelling halt > > * CLEANUP: Variable style issues. > > * PORT: Rename installation helper xpce-install into xpce-copy to prevent > Windows from trying to run this program as admin. Corinna Vinshen. > > * FIXED: Start xpce from a background thread. > > * PORT: update of the Cygwin port by Corinna Vinschen > > * CLEANUP: Avoid more semantic singletons > > * FIXED: Semantic singletons. One fixes a bug in the class > prolog_predicate. > > > ------------------------------ > > Message: 3 > Date: Mon, 12 Aug 2013 15:59:18 -0600 > From: Michael Hendricks <[email protected]> > To: Jan Wielemaker <[email protected]> > Cc: "[email protected]" > <[email protected]> > Subject: Re: [SWIPL] Ann: SWI-Prolog 6.5.1 > Message-ID: > <CAFHuXuZxKzA372w1RbFRG-eoD799s5PmHAAkWx_ayjxeSoWSgA@mail.gmail.com> > Content-Type: text/plain; charset="utf-8" > > Hi Jan, > > On Mon, Aug 12, 2013 at 2:43 PM, Jan Wielemaker <[email protected]> wrote: > >> I've uploaded SWI-Prolog 6.5.1. There are a lot of changes. Highlights: >> >> - Detection of `semantic singletons' by the compiler. This proofs >> to result in a quite high percentage of real bugs. My rough >> estimate is about 1/3th! And this is on established code! >> - Singleton detection with quasi quotations (do not claim a >> singleton of a QQ introduces a reference to the singleton >> in its expansion). >> - prolog_load_context/2 provides access to variable names. > > > There's some great stuff in this release. I'm especially pleased to see > the three changes above. Kudos! > _______________________________________________ SWI-Prolog mailing list [email protected] https://lists.iai.uni-bonn.de/mailman/listinfo.cgi/swi-prolog