]>
Repositorios git - scryer-prolog.git/log
Mark Thom [Wed, 3 Jan 2024 21:52:34 +0000 (14:52 -0700)]
Merge pull request #2268 from aarroyoc/docs-toplevel
Small fixes in documentation and toplevel.pl
Adrián Arroyo Calle [Wed, 3 Jan 2024 18:52:50 +0000 (19:52 +0100)]
Small fixes in documentation and toplevel.pl
Mark [Tue, 2 Jan 2024 18:34:38 +0000 (11:34 -0700)]
expand module names in transitive goals (#2255)
Mark [Tue, 2 Jan 2024 17:08:00 +0000 (10:08 -0700)]
fix cargo fmt --check
Mark [Tue, 2 Jan 2024 17:06:07 +0000 (10:06 -0700)]
mark anonymous variables in compile_is_call (#2257)
Mark Thom [Tue, 2 Jan 2024 16:19:10 +0000 (09:19 -0700)]
Merge pull request #2263 from aarroyoc/docs-toplevel
Move argv/1 to library(os)
Mark Thom [Tue, 2 Jan 2024 16:18:42 +0000 (09:18 -0700)]
Merge pull request #2262 from triska/faster_global_cardinality
ENHANCED: Suspend propagation during filtering in global_cardinality/2.
Adrián Arroyo Calle [Tue, 2 Jan 2024 12:16:11 +0000 (13:16 +0100)]
Move argv/1 to library(os)
Markus Triska [Mon, 1 Jan 2024 09:26:42 +0000 (10:26 +0100)]
ENHANCED: Suspend propagation during filtering in global_cardinality/2.
This allows subsequently invoked constraints to take the entire
filtering results into account, instead of being invoked when the
obtained information is not yet entirely used.
The SICStus-style attributed variables mechanism of Scryer Prolog
automatically prevents very subtle interaction problems that can arise
in systems that do not give all variables that are involved in a
unification an opportunity to schedule their propagators.
An example of such a subtle interaction is:
?- tuples_in([[A,C,B]], [[3,1,3],[4,2,4]]),
global_cardinality([A,B,D], [3-1,4-2]),
A = 4.
A = 4 causes pgcc_check/1 and pgcc/2 to be queued in the fast and slow
queue, respectively. In the fast queue, there is also rel_tuple/2,
which is worked off after gcc_check/1 and simultaneously instantiates
both C and B (to 2 and 4, respectively). Instantiation of C schedules
do_queue//0 from verify_attributes/3. Note that C does not participate
in the global_cardinality/2 constraint.
Critically, B also gets an opportunity to schedule its propagators in
this case, so another gcc_check/1 is run before gcc_global/2!
Mark Thom [Mon, 1 Jan 2024 07:33:58 +0000 (00:33 -0700)]
Merge pull request #2259 from bakaq/comment_warnings
Emit warnings as Prolog comments
Mark Thom [Mon, 1 Jan 2024 07:33:36 +0000 (00:33 -0700)]
Merge pull request #2258 from triska/faster_scalar_product
ENHANCED: Suspend propagation during filtering in scalar product constraints.
bakaq [Sat, 30 Dec 2023 20:39:20 +0000 (17:39 -0300)]
Emit warnings as Prolog comments
Markus Triska [Sat, 30 Dec 2023 09:30:25 +0000 (10:30 +0100)]
ENHANCED: Suspend propagation during filtering in scalar product constraints.
This allows subsequently invoked constraints to take the entire
filtering results into account, instead of being invoked when the
obtained information is not yet entirely used.
It speeds up programs such as the one in:
https://github.com/triska/clpz/issues/26
Mark Thom [Fri, 29 Dec 2023 20:10:19 +0000 (13:10 -0700)]
Merge pull request #2252 from aarroyoc/bump-versions
Update ring and bump versions in Cargo.lock
Mark Thom [Fri, 29 Dec 2023 17:40:19 +0000 (10:40 -0700)]
Merge pull request #2254 from bakaq/issue_1404
Parse as much of a list as possible as a partial string
Mark [Fri, 29 Dec 2023 17:11:39 +0000 (10:11 -0700)]
check that Target is an atom in scoped_clause_to_evacuable (#2248)
Adrián Arroyo Calle [Wed, 27 Dec 2023 21:15:27 +0000 (22:15 +0100)]
Update ring and bump versions in Cargo.lock
bakaq [Thu, 28 Dec 2023 17:58:23 +0000 (14:58 -0300)]
Parse as much of a list as possible as a partial string #1404
Mark Thom [Thu, 28 Dec 2023 00:37:42 +0000 (17:37 -0700)]
Merge pull request #2251 from triska/crrl_ed25519
improve structure, naming and explanation of PKCS#8v2 encoding
Markus Triska [Wed, 27 Dec 2023 20:12:52 +0000 (21:12 +0100)]
improve structure, naming and explanation of PKCS#8v2 encoding
Mark [Tue, 26 Dec 2023 19:30:46 +0000 (12:30 -0700)]
throw errors from char_reader.rs and get_n_chars when reading bad UTF8 data (#2244)
Mark Thom [Tue, 26 Dec 2023 17:09:08 +0000 (10:09 -0700)]
Merge pull request #2245 from triska/crrl_ed25519
ENHANCED: Use crrl for
Ed25519 signing and signature verification.
Markus Triska [Tue, 26 Dec 2023 06:24:18 +0000 (07:24 +0100)]
ENHANCED: Use crrl for
Ed25519 signing and signature verification.
The main motivation for this change is the introduction of the newly
available predicate ed25519_seed_keypair/2, allowing to generate a key
pair from a given seed. In this way, a key pair can be dynamically
generated from (for example) a password, using crypto_password_hash/3
in combination with crypto_data_hkdf/4 to generate the seed. The
advantage of this method is that the private key need not be stored at
all anywhere.
It is not possible to add a corresponding feature to ring, since it is
closed as "not planned": https://github.com/briansmith/ring/issues/1003
I also used this opportunity to move more of the logic to Prolog. We
now have total control of the key pair representation, and I also
changed the representation to conform to the PKCS#8 v2 standard,
something that only later ring versions do, while still being
backwards compatible with tools that produce a wrong representation
including earlier ring versions.
Another great advantage we get from this change is that the
Ed25519
predicates now also run on the 32-bit and WASM versions of Scryer.
Mark Thom [Fri, 22 Dec 2023 16:53:40 +0000 (09:53 -0700)]
Merge pull request #2243 from bakaq/issue_2241
Fix anonymous attributed variables not showing in toplevel
Mark Thom [Fri, 22 Dec 2023 16:52:56 +0000 (09:52 -0700)]
Merge pull request #2242 from triska/starting
explain starting Scryer Prolog
bakaq [Fri, 22 Dec 2023 16:07:09 +0000 (13:07 -0300)]
Fix anonymous attributed variables not showing in toplevel #2241
Markus Triska [Fri, 22 Dec 2023 07:29:28 +0000 (08:29 +0100)]
explain starting Scryer Prolog
Mark [Thu, 21 Dec 2023 19:14:12 +0000 (12:14 -0700)]
fix off-by-one error caused logtalk test to crash
Mark [Thu, 21 Dec 2023 17:24:01 +0000 (10:24 -0700)]
fix cargo fmt --check
Mark [Thu, 21 Dec 2023 03:45:11 +0000 (20:45 -0700)]
restore [o|i]ip zeroing to trust and fix '$get_clause_p'/3 (#2238)
Mark Thom [Wed, 20 Dec 2023 20:42:46 +0000 (13:42 -0700)]
Merge pull request #2218 from bakaq/when
Add when/2 and when_si/2
Mark [Mon, 18 Dec 2023 22:21:30 +0000 (15:21 -0700)]
clamp lower_bound_of_target_clause index (#840)
Mark [Mon, 18 Dec 2023 21:57:22 +0000 (14:57 -0700)]
don't replace undefined module predicates (#2232)
Mark [Mon, 18 Dec 2023 20:26:36 +0000 (13:26 -0700)]
fix retraction of local dynamic predicates (#2215, #2232)
Mark [Mon, 18 Dec 2023 16:52:46 +0000 (09:52 -0700)]
fix '$get_clause_p' whose old implementation was broken by the introduction
of lookahead indexing
Mark [Fri, 15 Dec 2023 17:10:09 +0000 (10:10 -0700)]
improve performance of lower_bound_of_target_clause (#1598)
Mark Thom [Mon, 18 Dec 2023 03:20:50 +0000 (20:20 -0700)]
Merge pull request #2233 from aarroyoc/fix-functor-2214
Throw ValidType::Atom error in functor
Mark Thom [Mon, 18 Dec 2023 03:20:41 +0000 (20:20 -0700)]
Merge pull request #2229 from aarroyoc/fix-backslash-docs
Fix backslash docs
Adrián Arroyo Calle [Sun, 17 Dec 2023 11:38:46 +0000 (12:38 +0100)]
Throw ValidType::Atom error in functor
Adrián Arroyo Calle [Sat, 16 Dec 2023 18:01:39 +0000 (19:01 +0100)]
Fix backslash docs
Mark Thom [Fri, 15 Dec 2023 18:33:03 +0000 (11:33 -0700)]
Merge pull request #2226 from mthom/dependabot/cargo/zerocopy-0.7.31
Bump zerocopy from 0.7.25 to 0.7.31
Mark [Fri, 15 Dec 2023 07:42:58 +0000 (00:42 -0700)]
Revert "improve performance of lower_bound_of_target_clause (#1598)"
This reverts commit
8938331915c53e34be8f98002fe8d56d8b7ada08 .
Mark [Fri, 15 Dec 2023 07:39:29 +0000 (00:39 -0700)]
improve performance of lower_bound_of_target_clause (#1598)
dependabot[bot] [Fri, 15 Dec 2023 03:52:00 +0000 (03:52 +0000)]
Bump zerocopy from 0.7.25 to 0.7.31
Bumps [zerocopy](https://github.com/google/zerocopy) from 0.7.25 to 0.7.31.
- [Release notes](https://github.com/google/zerocopy/releases)
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google/zerocopy/compare/v0.7.25...v0.7.31)
---
updated-dependencies:
- dependency-name: zerocopy
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <[email protected] >
Mark [Wed, 13 Dec 2023 18:49:16 +0000 (11:49 -0700)]
fix use of copy_term/3 for attribute goals in toplevel (#888, #2057, #2217)
Mark [Mon, 11 Dec 2023 22:17:02 +0000 (15:17 -0700)]
fix cargo style failure
Mark [Mon, 11 Dec 2023 21:38:20 +0000 (14:38 -0700)]
dereference port address in socket_server_open (#2222)
Mark [Mon, 11 Dec 2023 20:29:22 +0000 (13:29 -0700)]
restore print_tcp_listener in printer (#2221)
bakaq [Mon, 11 Dec 2023 15:28:59 +0000 (12:28 -0300)]
Tests for when/2 and solved bug
bakaq [Sun, 10 Dec 2023 23:55:50 +0000 (20:55 -0300)]
Add when/2 and when_si/2
Mark Thom [Wed, 6 Dec 2023 20:45:46 +0000 (13:45 -0700)]
Merge pull request #2207 from infogulch/ci-build-before-test
CI: Make test step output easier to read
Mark Thom [Wed, 6 Dec 2023 20:27:14 +0000 (13:27 -0700)]
Merge pull request #2211 from Skgland/file-based-cli-tests
fix missing .pl file for singleton test case and move .pl files under `<testcase>.in/`
Skgland [Wed, 6 Dec 2023 20:21:04 +0000 (21:21 +0100)]
fix missing .pl file for singleton test case and move .pl files under `<testcase>.in/`
follow up to #2205
infogulch [Wed, 6 Dec 2023 02:51:04 +0000 (20:51 -0600)]
Clean up test step by compiling in build step
Mark Thom [Tue, 5 Dec 2023 21:45:00 +0000 (14:45 -0700)]
Merge pull request #2205 from Skgland/file-based-cli-tests
File based cli tests using trycmd
Mark Thom [Tue, 5 Dec 2023 20:14:30 +0000 (13:14 -0700)]
Merge pull request #2203 from coasys/library-use-case
Don’t include unbound variables in results returned from run_query()
Nicolas Luck [Tue, 5 Dec 2023 14:00:07 +0000 (15:00 +0100)]
Result with one empty match should be false
Mark Thom [Mon, 4 Dec 2023 22:49:26 +0000 (15:49 -0700)]
Merge pull request #2204 from mthom/remove_not_as_non_terminal
remove (\+)//1 (#1511)
Skgland [Mon, 4 Dec 2023 21:59:52 +0000 (22:59 +0100)]
fix windows test by not disabling normalization
- this re-enables line ending and file path normalization
- the latter might be unwanted, but there is only a shared flag
- this might result in too loose matching of / and \ in stdout and stderr as prolog syntax may be mistaken for a path
Skgland [Mon, 4 Dec 2023 21:41:25 +0000 (22:41 +0100)]
fix formatting
Skgland [Mon, 4 Dec 2023 21:23:04 +0000 (22:23 +0100)]
rename to match toml file
- goals.pl is used by both compound_goal.toml and multiple_goals.toml therefor renamed the later to share a common prefix with goals.pl, to keep them together
Skgland [Mon, 4 Dec 2023 21:16:04 +0000 (22:16 +0100)]
move .pl files from tests-pl next to the .toml of the test that uses them
Skgland [Mon, 4 Dec 2023 21:00:52 +0000 (22:00 +0100)]
File-oriented testing
inspired by #2191 but for the `run_top_level_test_with_args`s and `run_top_level_test_no_args instead of the `load_module_test`s
Mark [Mon, 4 Dec 2023 20:51:44 +0000 (13:51 -0700)]
remove (\+)//1 (#1511)
Mark [Mon, 4 Dec 2023 19:20:54 +0000 (12:20 -0700)]
correct cargo fmt errors
Mark [Mon, 4 Dec 2023 19:20:14 +0000 (12:20 -0700)]
emit callable type errors from call/1 and phrase/3 when appropriate (#2202)
Nicolas Luck [Mon, 4 Dec 2023 19:18:41 +0000 (20:18 +0100)]
cargo fmt
Nicolas Luck [Mon, 4 Dec 2023 19:10:06 +0000 (20:10 +0100)]
Don’t include unbound variables in results returned from run_query
Nicolas Luck [Mon, 4 Dec 2023 19:06:14 +0000 (20:06 +0100)]
Merge branch 'master' into library-use-case
Mark [Mon, 4 Dec 2023 18:19:36 +0000 (11:19 -0700)]
add module name and missing predicate key to module_does_not_contain_claimed_export error (#2195)
Mark Thom [Mon, 4 Dec 2023 17:46:37 +0000 (10:46 -0700)]
Merge pull request #2201 from wkral/revert-2200-percent-graphic-char
Revert "Add '%' to the list of graphic_chars (#2199)"
William Kral [Mon, 4 Dec 2023 06:19:59 +0000 (22:19 -0800)]
Revert "Add '%' to the list of graphic_chars (#2199)"
Mark Thom [Mon, 4 Dec 2023 06:02:05 +0000 (23:02 -0700)]
Merge pull request #2200 from wkral/percent-graphic-char
Add '%' to the list of graphic_chars (#2119)
William Kral [Mon, 4 Dec 2023 03:38:40 +0000 (19:38 -0800)]
Add '%' to the list of graphic_chars (#2199)
Mark Thom [Sun, 3 Dec 2023 03:16:59 +0000 (20:16 -0700)]
Merge pull request #2194 from triska/clpz_monotonic
support (#=)/3 and (#<)/3 also in the monotonic execution mode
Markus Triska [Sat, 2 Dec 2023 21:33:56 +0000 (22:33 +0100)]
support (#=)/3 and (#<)/3 also in the monotonic execution mode
Mark [Sat, 2 Dec 2023 05:35:36 +0000 (22:35 -0700)]
move propagated_var_nums insertion to proper scope (#2183)
Mark [Thu, 30 Nov 2023 19:25:28 +0000 (12:25 -0700)]
propagate variable hits to parent branches in push_missing_vars (#2183)
Mark Thom [Wed, 29 Nov 2023 20:52:38 +0000 (13:52 -0700)]
Merge pull request #2187 from triska/term_si
ADDED: term_si/1, true for terms
Markus Triska [Wed, 29 Nov 2023 20:24:54 +0000 (21:24 +0100)]
ADDED: term_si/1, true for terms
One use case is to ensure that once/1 is safe to use:
term_si(Goal),
once(Goal)
In such cases, Goal is ground and can yield at most one solution,
therefore once/1 does not remove any solutions.
Mark [Wed, 29 Nov 2023 17:51:55 +0000 (10:51 -0700)]
fix overeager detection of (->)/2 in if position of (;)/2 (#2183)
Mark Thom [Tue, 28 Nov 2023 23:17:44 +0000 (16:17 -0700)]
Merge pull request #2186 from aarroyoc/cpu-now-wasm32
Implement $cpu_now in wasm32
Mark [Tue, 28 Nov 2023 22:31:00 +0000 (15:31 -0700)]
open pl files instead of directories (#2014)
Mark Thom [Tue, 28 Nov 2023 22:31:53 +0000 (15:31 -0700)]
Merge pull request #2184 from mthom/dependabot/cargo/openssl-0.10.60
Bump openssl from 0.10.57 to 0.10.60
Adrián Arroyo Calle [Tue, 28 Nov 2023 22:11:52 +0000 (23:11 +0100)]
Implement $cpu_now in wasm32
dependabot[bot] [Tue, 28 Nov 2023 21:43:23 +0000 (21:43 +0000)]
Bump openssl from 0.10.57 to 0.10.60
Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.57 to 0.10.60.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.57...openssl-v0.10.60)
---
updated-dependencies:
- dependency-name: openssl
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <[email protected] >
Mark [Tue, 28 Nov 2023 21:38:48 +0000 (14:38 -0700)]
allocate cut variables properly (#2183)
Mark [Tue, 28 Nov 2023 19:58:54 +0000 (12:58 -0700)]
allocate cut variables as temporaries when in non-allocating clause (#2183)
Mark [Sun, 26 Nov 2023 03:59:01 +0000 (20:59 -0700)]
bind missing module atom in retract/1 (#2182)
Mark Thom [Fri, 24 Nov 2023 17:57:13 +0000 (18:57 +0100)]
Merge pull request #2169 from infogulch/flame
Benchmark improvements
Mark Thom [Fri, 24 Nov 2023 17:00:55 +0000 (18:00 +0100)]
Merge branch 'master' into flame
Mark [Fri, 24 Nov 2023 05:01:21 +0000 (22:01 -0700)]
remove redundant running count increment in mark_non_callable (#2176)
Mark Thom [Thu, 23 Nov 2023 20:31:12 +0000 (21:31 +0100)]
Merge pull request #2179 from mthom/fix_stress_integration_test
Fix stress integration test
Mark [Thu, 23 Nov 2023 19:55:55 +0000 (12:55 -0700)]
set b0 to b for run_query call
Mark Thom [Wed, 22 Nov 2023 20:52:49 +0000 (21:52 +0100)]
Merge pull request #2173 from aarroyoc/js-eval
Add js_eval/2 for wasm32
Adrián Arroyo Calle [Mon, 20 Nov 2023 16:45:22 +0000 (17:45 +0100)]
Add js_eval/2 for wasm32
Mark Thom [Wed, 22 Nov 2023 16:54:55 +0000 (17:54 +0100)]
Merge pull request #2177 from mthom/remove_assertx
Remove assert(a,z)/2 (#1975)
Mark [Wed, 22 Nov 2023 16:24:07 +0000 (09:24 -0700)]
remove assert(a,z)/2 (#1975)
Mark [Wed, 22 Nov 2023 15:57:23 +0000 (08:57 -0700)]
add CutPoint to select_switch_on_term_index (#2176)
infogulch [Wed, 22 Nov 2023 00:12:26 +0000 (18:12 -0600)]
Expose inference counts on Machine; publish to CI