]> Repositorios git - scryer-prolog.git/log
scryer-prolog.git
2 years agoENHANCED: further partial evaluation for the common control sequence ~d
Markus Triska [Wed, 20 Mar 2024 19:26:01 +0000 (20:26 +0100)]
ENHANCED: further partial evaluation for the common control sequence ~d

2 years agoextend partial evaluation to computing lengths when statically possible
Markus Triska [Wed, 20 Mar 2024 18:48:33 +0000 (19:48 +0100)]
extend partial evaluation to computing lengths when statically possible

2 years agogoal expansion for format/2 and format/3
Markus Triska [Mon, 18 Mar 2024 20:43:30 +0000 (21:43 +0100)]
goal expansion for format/2 and format/3

In this way, we benefit from partial evaluation of format strings.

2 years agostrengthen type check
Markus Triska [Mon, 18 Mar 2024 20:35:12 +0000 (21:35 +0100)]
strengthen type check

2 years agoENHANCED: Partial evaluation of format_//2.
Markus Triska [Mon, 18 Mar 2024 20:34:13 +0000 (21:34 +0100)]
ENHANCED: Partial evaluation of format_//2.

This moves analysis of the format string to compilation time when
possible, so that parsing it at run time is no longer necessary.

2 years agoexpand_call_goals/3 should expand meta-predicate subgoals (#2361)
Mark [Tue, 19 Mar 2024 23:12:26 +0000 (17:12 -0600)]
expand_call_goals/3 should expand meta-predicate subgoals (#2361)

2 years agoMerge pull request #2358 from triska/octet_documentation
Mark Thom [Sun, 17 Mar 2024 01:56:49 +0000 (19:56 -0600)]
Merge pull request #2358 from triska/octet_documentation

Documentation improvements for encoding(octet) option in several predicates

2 years agoindicate deprecated functionality
Markus Triska [Sat, 16 Mar 2024 20:23:12 +0000 (21:23 +0100)]
indicate deprecated functionality

2 years agoDOC: Un-document the ability to use bytes with encoding(octet).
Markus Triska [Sat, 16 Mar 2024 19:30:46 +0000 (20:30 +0100)]
DOC: Un-document the ability to use bytes with encoding(octet).

This usage is now considered deprecated. Use strings instead for
greater efficiency and type consistency in your applications.

This functionality is a candidate for removal in a future commit.

2 years agoDOC: Improve descriptions to make clear what encoding(octet) means.
Markus Triska [Sat, 16 Mar 2024 19:24:44 +0000 (20:24 +0100)]
DOC: Improve descriptions to make clear what encoding(octet) means.

In particular, octet does *not* mean that the input is a list of
Prolog bytes in the sense of "integers between 0..255", but that the
character codes are used directly as byte values.

2 years agodon't skip to end of pstr in CommaSeparatedCharList token variant (#2356)
Mark [Wed, 13 Mar 2024 00:36:53 +0000 (18:36 -0600)]
don't skip to end of pstr in CommaSeparatedCharList token variant (#2356)

2 years agoMerge pull request #2357 from aarroyoc/update-website-0.9.4
Mark Thom [Tue, 12 Mar 2024 22:46:31 +0000 (16:46 -0600)]
Merge pull request #2357 from aarroyoc/update-website-0.9.4

Website: link release v0.9.4

2 years agoWebsite: link release v0.9.4
Adrián Arroyo Calle [Tue, 12 Mar 2024 21:23:12 +0000 (22:23 +0100)]
Website: link release v0.9.4

2 years agorecompile original terms from compile_clause for term to term expansions (#2236)
Mark [Sat, 2 Mar 2024 01:56:52 +0000 (18:56 -0700)]
recompile original terms from compile_clause for term to term expansions (#2236)

2 years agoMerge pull request #2354 from triska/side_channel
Mark Thom [Fri, 1 Mar 2024 23:11:22 +0000 (16:11 -0700)]
Merge pull request #2354 from triska/side_channel

explain potential side-channel attacks due to compact string representation

2 years agoexplain potential side-channel attacks due to compact string representation
Markus Triska [Sun, 25 Feb 2024 10:13:38 +0000 (11:13 +0100)]
explain potential side-channel attacks due to compact string representation

This legitimate concern was already raised by @infogulch in:

https://github.com/mthom/scryer-prolog/issues/1309#issuecomment-1080028854

Thank you a lot!

2 years agoMerge pull request #2353 from triska/hmac_verification
Mark Thom [Fri, 1 Mar 2024 19:09:16 +0000 (12:09 -0700)]
Merge pull request #2353 from triska/hmac_verification

ENHANCED: Safe HMAC verification, using constant time string comparison.

2 years agoENHANCED: Safe HMAC verification, using constant time string comparison.
Markus Triska [Sat, 24 Feb 2024 07:18:38 +0000 (08:18 +0100)]
ENHANCED: Safe HMAC verification, using constant time string comparison.

Without this provision, the expected HMAC can be gathered from timing
differences depending on the position where the strings first diverge,
and hence an attacker can forge an authenticated message by supplying
the gathered HMAC.

Test case, using exp(E) to succeed exactly 2^E times:

    exp(E) :-
        N is 2^E,
        between(1, N, _).

yielding:

    ?- Options = [algorithm(sha512),hmac([1,2,3])],
       Ds = "test",
       crypto_data_hash(Ds, H, Options),
       phrase((seq(As),seq(Bs)), H),
       same_length(Bs, Cs),
       maplist(=(a), Cs),
       append(As, Cs, H1),
       time((exp(10),crypto_data_hash(Ds, H1, Options),false)).
    %@    % CPU time: 0.710s, 7_942_187 inferences
    %@    % CPU time: 0.713s, 7_942_187 inferences
    %@    % CPU time: 0.712s, 7_942_187 inferences
    %@    % CPU time: 0.711s, 7_942_187 inferences
    %@    % CPU time: 0.710s, 7_942_187 inferences
    %@    % CPU time: 0.711s, 7_942_187 inferences
    %@    % CPU time: 0.710s, 7_942_187 inferences

    ?- length(_, L), time((exp(10),crypto_data_hash("test", "3caebd1a0a2647930319a660b7d3642eb380fbd43202f9f6d08aabaa9ba50c39522a12ead10f0423f0af613cbc6fea74ad682ee11f563cc2e735722004fda2ba", [algorithm(sha512),hmac([0,L])]),false)).
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.734s, 7_878_699 inferences
    %@    % CPU time: 0.732s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.733s, 7_878_699 inferences
    %@    % CPU time: 0.515s, 5_525_404 inferences
    %@    error('$interrupt_thrown',repl/0).

2 years agoMerge pull request #2351 from infogulch/install-current-iai
Mark Thom [Fri, 1 Mar 2024 00:09:47 +0000 (17:09 -0700)]
Merge pull request #2351 from infogulch/install-current-iai

Install version of iai-callgrind set in Cargo.toml

2 years agoInstall version of iai-callgrind set in Cargo.toml
infogulch [Thu, 29 Feb 2024 23:20:01 +0000 (17:20 -0600)]
Install version of iai-callgrind set in Cargo.toml

2 years agomake indexer downcast Integers to Fixnums when possible, be slightly more judicious...
Mark [Thu, 29 Feb 2024 23:15:28 +0000 (16:15 -0700)]
make indexer downcast Integers to Fixnums when possible, be slightly more judicious about allocating Integers instead of Fixnums (#2340)

2 years agoadd #2341 test to lib_machine.rs
Mark [Thu, 29 Feb 2024 22:12:58 +0000 (15:12 -0700)]
add #2341 test to lib_machine.rs

2 years agouse scryer-modular-bitfield on github, version bump v0.9.4
Mark [Thu, 29 Feb 2024 17:08:08 +0000 (10:08 -0700)]
use scryer-modular-bitfield on github, version bump

2 years agofix misuse of TypeError trait while fixing #2345
Mark [Thu, 29 Feb 2024 03:47:36 +0000 (20:47 -0700)]
fix misuse of TypeError trait while fixing #2345

2 years agoissue callable type error from dynamic_module_resolution if module is not an atom...
Mark [Thu, 29 Feb 2024 03:35:38 +0000 (20:35 -0700)]
issue callable type error from dynamic_module_resolution if module is not an atom (#2345)

2 years agoMerge pull request #2309 from coasys/library-use-case
Mark Thom [Wed, 28 Feb 2024 21:34:54 +0000 (14:34 -0700)]
Merge pull request #2309 from coasys/library-use-case

Iron-out edge cases for library use-case, adding extensive real-world test assertions

2 years agoMerge pull request #2342 from triska/curve_doc
Mark Thom [Sat, 24 Feb 2024 21:53:18 +0000 (14:53 -0700)]
Merge pull request #2342 from triska/curve_doc

DOC: Add DocLog comments for reasoning about elliptic curves.

2 years agoDOC: Add DocLog comments for reasoning about elliptic curves.
Markus Triska [Sat, 24 Feb 2024 19:30:48 +0000 (20:30 +0100)]
DOC: Add DocLog comments for reasoning about elliptic curves.

2 years agoMerge pull request #2338 from triska/hmac
Mark Thom [Thu, 22 Feb 2024 21:48:12 +0000 (14:48 -0700)]
Merge pull request #2338 from triska/hmac

ADDED: Hash-based message authentication code (HMAC), using hmac(Key).

2 years agoADDED: Hash-based message authentication code (HMAC), using hmac(Key).
Markus Triska [Thu, 22 Feb 2024 19:17:20 +0000 (20:17 +0100)]
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).

2 years agoMerge pull request #2337 from triska/master
Mark Thom [Sun, 18 Feb 2024 17:05:09 +0000 (10:05 -0700)]
Merge pull request #2337 from triska/master

link to newly available paper on analysis of dose-escalation protocols

2 years agolink to newly available paper on analysis of dose-escalation protocols
Markus Triska [Sun, 18 Feb 2024 08:18:41 +0000 (09:18 +0100)]
link to newly available paper on analysis of dose-escalation protocols

Many thanks to @dcnorris for this great application and cooperation!

2 years agofix build of run_iai bench for wasm32
Bennet Bleßmann [Fri, 16 Feb 2024 23:15:03 +0000 (00:15 +0100)]
fix build of run_iai bench for wasm32

2 years agofix benchmarks being broken for every target except wam32
Bennet Bleßmann [Fri, 16 Feb 2024 23:01:10 +0000 (00:01 +0100)]
fix benchmarks being broken for every target except wam32

2 years agocfg out benches for wasm32
Bennet Bleßmann [Fri, 16 Feb 2024 22:43:22 +0000 (23:43 +0100)]
cfg out benches for wasm32

2 years agofix compilation of wasm32 test and skip to run wasm32 tests
Bennet Bleßmann [Fri, 16 Feb 2024 22:18:21 +0000 (23:18 +0100)]
fix compilation of wasm32 test  and skip to run wasm32 tests

2 years agoundo `continue-on-error`
Bennet Bleßmann [Fri, 16 Feb 2024 21:23:22 +0000 (22:23 +0100)]
undo `continue-on-error`

- currently  `continue-on-error` is not shown in a usefull way on failiure see <https://github.com/orgs/community/discussions/15452>

2 years agobump ahash lock to 0.8.7
Bennet Bleßmann [Fri, 16 Feb 2024 21:15:32 +0000 (22:15 +0100)]
bump ahash lock to 0.8.7

- fix nightly build
- not bumping to latest aka. 0.8.8 as that has a msrv of 1.72.0 and we are only at 1.70.0

2 years agoMerge pull request #2327 from triska/char_type
Mark Thom [Mon, 12 Feb 2024 00:33:07 +0000 (17:33 -0700)]
Merge pull request #2327 from triska/char_type

FIXED: char_type/2 for unbound first argument.

2 years agoFIXED: char_type/2 for unbound first argument.
Markus Triska [Sun, 11 Feb 2024 21:19:19 +0000 (22:19 +0100)]
FIXED: char_type/2 for unbound first argument.

Surrogate pairs form a gap in valid character codes, see:

    https://github.com/mthom/scryer-prolog/issues/2326#issuecomment-1937864665

Many thanks to @Skgland for the pointer, and to @librarianmage for the
question that spawned this!

This addresses #2326.

2 years agocontinue-on-error if target=wasm32 or rust=nightly
Nicolas Luck [Fri, 9 Feb 2024 12:48:45 +0000 (13:48 +0100)]
continue-on-error if target=wasm32 or rust=nightly

2 years agoReactivate nightly test job with continue-on-error set
Nicolas Luck [Fri, 9 Feb 2024 12:44:37 +0000 (13:44 +0100)]
Reactivate nightly test job with continue-on-error set

2 years agoUse stable Rust for style/report and deactivate nightly x86_64 target in CI
Nicolas Luck [Fri, 9 Feb 2024 12:14:06 +0000 (13:14 +0100)]
Use stable Rust for style/report and deactivate nightly x86_64 target in CI

2 years agoMerge branch 'master' into library-use-case
Nicolas Luck [Fri, 9 Feb 2024 11:41:01 +0000 (12:41 +0100)]
Merge branch 'master' into library-use-case

2 years agoUpdate src/machine/parsed_results.rs
Mark Thom [Fri, 9 Feb 2024 00:38:01 +0000 (17:38 -0700)]
Update src/machine/parsed_results.rs

Co-authored-by: Bennet Bleßmann <[email protected]>
2 years agofix tests broken by singleton
Mark [Thu, 8 Feb 2024 04:46:32 +0000 (21:46 -0700)]
fix tests broken by singleton

2 years agoMerge pull request #2322 from triska/char_code
Mark Thom [Thu, 8 Feb 2024 01:49:13 +0000 (18:49 -0700)]
Merge pull request #2322 from triska/char_code

ENHANCED: Bi-directional char_code/2, addressing #2321.

2 years agoENHANCED: Bidirectional char_type/2, addressing #2321.
Markus Triska [Wed, 7 Feb 2024 19:05:07 +0000 (20:05 +0100)]
ENHANCED: Bidirectional char_type/2, addressing #2321.

Suggested by @librarianmage, many thanks!

2 years agoMerge pull request #2319 from triska/clpz_t
Mark Thom [Wed, 7 Feb 2024 01:11:40 +0000 (18:11 -0700)]
Merge pull request #2319 from triska/clpz_t

ADDED: clpz_t/2, generalizing support for use with library(reif)

2 years agoADDED: clpz_t/2, generalizing support for use with library(reif)
Markus Triska [Tue, 6 Feb 2024 18:05:29 +0000 (19:05 +0100)]
ADDED: clpz_t/2, generalizing support for use with library(reif)

This was suggested and contributed by @librarianmage in:

    https://github.com/mthom/scryer-prolog/issues/2225#issuecomment-1890801923

Many thanks!

If anyone can find a better predicate name, please let us know any time!

2 years agofmt
Mark [Thu, 1 Feb 2024 16:31:04 +0000 (09:31 -0700)]
fmt

2 years agoMerge pull request #2317 from aarroyoc/all-modules-test
Mark Thom [Sun, 4 Feb 2024 22:09:13 +0000 (15:09 -0700)]
Merge pull request #2317 from aarroyoc/all-modules-test

Add all_mdoules test and fix library(csv)

2 years agoAdd all_mdoules test and fix library(csv)
Adrián Arroyo Calle [Sun, 4 Feb 2024 20:04:02 +0000 (21:04 +0100)]
Add all_mdoules test and fix library(csv)

2 years agofix reverted tests, ensure files are loaded before goals (#2315)
Mark [Sat, 3 Feb 2024 18:49:26 +0000 (11:49 -0700)]
fix reverted tests, ensure files are loaded before goals (#2315)

2 years agofix broken tests
Mark [Sat, 3 Feb 2024 00:04:47 +0000 (17:04 -0700)]
fix broken tests

2 years agotreat consultation of command line modules as regular goals (#2314)
Mark [Fri, 2 Feb 2024 22:35:00 +0000 (15:35 -0700)]
treat consultation of command line modules as regular goals (#2314)

2 years agofmt
Mark [Fri, 2 Feb 2024 18:49:02 +0000 (11:49 -0700)]
fmt

2 years agoload .scryerrc before files and goals (#1775, #2313)
Mark [Fri, 2 Feb 2024 17:54:28 +0000 (10:54 -0700)]
load .scryerrc before files and goals (#1775, #2313)

2 years agorecord stub choice point as block
Mark [Thu, 1 Feb 2024 16:26:58 +0000 (09:26 -0700)]
record stub choice point as block

2 years agoTest show problem with nonexistent predicate
Nicolas Luck [Thu, 1 Feb 2024 13:14:50 +0000 (14:14 +0100)]
Test show problem with nonexistent predicate

2 years agofmt
Nicolas Luck [Thu, 1 Feb 2024 12:53:21 +0000 (13:53 +0100)]
fmt

2 years agoclippy
Nicolas Luck [Thu, 1 Feb 2024 12:51:37 +0000 (13:51 +0100)]
clippy

2 years agoFix all orderings in integration assertions
Nicolas Luck [Thu, 1 Feb 2024 12:43:51 +0000 (13:43 +0100)]
Fix all orderings in integration assertions

2 years agoRemove test with long program literals, not needed
Nicolas Luck [Thu, 1 Feb 2024 12:00:49 +0000 (13:00 +0100)]
Remove test with long program literals, not needed

2 years agoMore ordering adjustments
Nicolas Luck [Thu, 1 Feb 2024 11:59:10 +0000 (12:59 +0100)]
More ordering adjustments

2 years agofix style errors
Mark [Thu, 1 Feb 2024 00:32:32 +0000 (17:32 -0700)]
fix style errors

2 years agoindex stub choice point correctly
Mark [Thu, 1 Feb 2024 00:30:13 +0000 (17:30 -0700)]
index stub choice point correctly

2 years agoExtract failing assertion as single test case
Nicolas Luck [Wed, 31 Jan 2024 14:03:28 +0000 (15:03 +0100)]
Extract failing assertion as single test case

2 years agoAdjust some first result orderings in integration assertions
Nicolas Luck [Tue, 30 Jan 2024 11:54:12 +0000 (12:54 +0100)]
Adjust some first result orderings in integration assertions

2 years agocheck for True or False Query Resolution unconditionally
Mark [Mon, 29 Jan 2024 22:06:56 +0000 (15:06 -0700)]
check for True or False Query Resolution unconditionally

2 years agofmt
Nicolas Luck [Mon, 29 Jan 2024 17:44:20 +0000 (18:44 +0100)]
fmt

2 years agoAdd more test cases to differentiate usage of discontiguous
Nicolas Luck [Mon, 29 Jan 2024 15:49:03 +0000 (16:49 +0100)]
Add more test cases to differentiate usage of discontiguous

2 years agoMinimal reproduction of faulty behaviour seen in integration tests
Nicolas Luck [Mon, 29 Jan 2024 14:26:06 +0000 (15:26 +0100)]
Minimal reproduction of faulty behaviour seen in integration tests

2 years agoMerge branch 'master' into library-use-case
Nicolas Luck [Fri, 26 Jan 2024 16:21:47 +0000 (17:21 +0100)]
Merge branch 'master' into library-use-case

2 years agoAdd expected results to integration test
Nicolas Luck [Fri, 26 Jan 2024 16:18:57 +0000 (17:18 +0100)]
Add expected results to integration test

Results are logs of what we get with old toplevel-based version of lib_machine. These are also congruent with what our tests logged out based on SWI.

2 years agoscan registers of instructions leading to verify_attributes interrupt to find the...
Mark [Fri, 26 Jan 2024 06:59:54 +0000 (23:59 -0700)]
scan registers of instructions leading to verify_attributes interrupt to find the number of registers to save (#2307)

2 years agoadd non chunk traversing cut family instructions to is_head_instr (#2307)
Mark [Fri, 26 Jan 2024 06:25:06 +0000 (23:25 -0700)]
add non chunk traversing cut family instructions to is_head_instr (#2307)

2 years agoMerge pull request #2308 from triska/small_format_improvements
Mark Thom [Thu, 25 Jan 2024 21:17:18 +0000 (14:17 -0700)]
Merge pull request #2308 from triska/small_format_improvements

Small format improvements

2 years agoupdate answers using latest toplevel output
Markus Triska [Thu, 25 Jan 2024 20:33:27 +0000 (21:33 +0100)]
update answers using latest toplevel output

2 years agorely on recently improved argument indexing for determinism
Markus Triska [Thu, 25 Jan 2024 20:31:08 +0000 (21:31 +0100)]
rely on recently improved argument indexing for determinism

This is possible as of 4fd37335f576240c25dfbfe6e70441aff166c60e.

2 years agomove call_residue_vars/2 from atts.pl to iso_ext.pl
Mark [Thu, 25 Jan 2024 19:37:46 +0000 (12:37 -0700)]
move call_residue_vars/2 from atts.pl to iso_ext.pl

2 years agodon't mark temp variables as safe through argument_to_value (#2307)
Mark [Thu, 25 Jan 2024 19:34:21 +0000 (12:34 -0700)]
don't mark temp variables as safe through argument_to_value (#2307)

2 years agoMerge pull request #2306 from triska/dcg_representation
Mark Thom [Tue, 23 Jan 2024 22:22:17 +0000 (15:22 -0700)]
Merge pull request #2306 from triska/dcg_representation

No longer use (->)//2 in library(clpb)

2 years agoMerge pull request #2305 from mthom/dependabot/cargo/h2-0.3.24
Mark Thom [Tue, 23 Jan 2024 20:50:17 +0000 (13:50 -0700)]
Merge pull request #2305 from mthom/dependabot/cargo/h2-0.3.24

Bump h2 from 0.3.22 to 0.3.24

2 years agoimprove error context
Markus Triska [Tue, 23 Jan 2024 20:43:34 +0000 (21:43 +0100)]
improve error context

Source: https://github.com/mthom/scryer-prolog/issues/2304#issuecomment-1906434756

2 years agono longer use (->)//2, since it is implementation defined
Markus Triska [Tue, 23 Jan 2024 20:40:50 +0000 (21:40 +0100)]
no longer use (->)//2, since it is implementation defined

This addresses #2304.

2 years agoBump h2 from 0.3.22 to 0.3.24
dependabot[bot] [Tue, 23 Jan 2024 18:20:39 +0000 (18:20 +0000)]
Bump h2 from 0.3.22 to 0.3.24

Bumps [h2](https://github.com/hyperium/h2) from 0.3.22 to 0.3.24.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/v0.3.24/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.22...v0.3.24)

---
updated-dependencies:
- dependency-name: h2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2 years agoMerge pull request #2303 from mthom/dependabot/cargo/shlex-1.3.0
Mark Thom [Tue, 23 Jan 2024 18:19:53 +0000 (11:19 -0700)]
Merge pull request #2303 from mthom/dependabot/cargo/shlex-1.3.0

Bump shlex from 1.2.0 to 1.3.0

2 years agoBump shlex from 1.2.0 to 1.3.0
dependabot[bot] [Mon, 22 Jan 2024 21:53:43 +0000 (21:53 +0000)]
Bump shlex from 1.2.0 to 1.3.0

Bumps [shlex](https://github.com/comex/rust-shlex) from 1.2.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2 years agoMerge pull request #2302 from triska/dcg_representation
Mark Thom [Mon, 22 Jan 2024 07:26:23 +0000 (00:26 -0700)]
Merge pull request #2302 from triska/dcg_representation

Throw representation errors for unsupported DCG grammar control constructs

2 years agouse newly available false//0
Markus Triska [Sun, 21 Jan 2024 21:53:22 +0000 (22:53 +0100)]
use newly available false//0

2 years agono longer use (->)//2, since it is implementation dependent
Markus Triska [Sun, 21 Jan 2024 21:50:36 +0000 (22:50 +0100)]
no longer use (->)//2, since it is implementation dependent

2 years agoremove checks that are now no longer needed due to representation errors
Markus Triska [Sat, 20 Jan 2024 10:02:54 +0000 (11:02 +0100)]
remove checks that are now no longer needed due to representation errors

2 years agoENHANCED: Throw representation errors for DCG bodies that use unsupported constructs.
Markus Triska [Sat, 20 Jan 2024 09:33:24 +0000 (10:33 +0100)]
ENHANCED: Throw representation errors for DCG bodies that use unsupported constructs.

This addresses #2285.

2 years agoMODIFIED: (->)/2 in DCGs is now only supported in the context of if-then-else.
Markus Triska [Sat, 20 Jan 2024 09:24:57 +0000 (10:24 +0100)]
MODIFIED: (->)/2 in DCGs is now only supported in the context of if-then-else.

That is, ( If -> Then ; Else ) is still supported, but ( If -> Then ) not.

2 years agoMerge pull request #2301 from aarroyoc/docs-copy-term-3
Mark Thom [Fri, 19 Jan 2024 17:18:59 +0000 (10:18 -0700)]
Merge pull request #2301 from aarroyoc/docs-copy-term-3

Move copy_term/3 to library(iso_ext)

2 years agoMerge pull request #2300 from aarroyoc/fix-2298
Mark Thom [Fri, 19 Jan 2024 17:15:35 +0000 (10:15 -0700)]
Merge pull request #2300 from aarroyoc/fix-2298

Throw error in call_residue_vars/2

2 years agoMove copy_term/3 to library(iso_ext)
Adrián Arroyo Calle [Fri, 19 Jan 2024 16:33:45 +0000 (17:33 +0100)]
Move copy_term/3 to library(iso_ext)

2 years agoThrow error in call_residue_vars/2
Adrián Arroyo Calle [Fri, 19 Jan 2024 15:58:26 +0000 (16:58 +0100)]
Throw error in call_residue_vars/2

2 years agoadd better no op detection in char_reader.rs (#2297)
Mark [Wed, 17 Jan 2024 04:50:53 +0000 (21:50 -0700)]
add better no op detection in char_reader.rs (#2297)