Markus Triska
a8da2b6a99
ISO: remove nonstandard operator meta_predicate.
...
Use functional notation instead for declarations.
This addresses #2822 .
2025-08-02 10:22:50 +02:00
Dan Rose
b767e4de25
xor is not a standard operator
2025-05-13 20:32:59 -05:00
Emilie Burgun
2a218f34b9
Test corner cases of stream aliasing
2025-02-06 23:47:22 +01:00
Mark Thom
5a869e8b48
Merge pull request #2777 from adri326/fix-2772-rnd_i-clipping
...
Fix invalid casts in is/2
2025-01-26 23:14:57 -07:00
Emilie Burgun
0cde8f9a43
Add integration tests for arithmetic operators
...
This extensively tests the behavior of is/2, both when compiled and in metacalls.
2025-01-27 00:10:56 +01:00
Emilie Burgun
b76bdd75e4
Fix #2725 by calling load_context/1 in the unspecified branch of strip_module/3
...
This fixes #2725 , by making it so that `strip_module(Pred, M, P), call(M:P)`
doesn't throw an `instanciation_error` when `Pred` isn't in the form `module:predicate`.
Now, `strip_module(hello, M, P)` will call `load_context(M)`, which unifies `M`
with the topmost module (or `user`).
Two new test cases are added: issue2725.pl, which tests the minimal case id(X) --> X.
and the strip_module(P, M, _), call(M:P) scenario, and module_resolution,
which tests the behavior of strip_module in a few scenarios.
2025-01-12 14:08:28 +01:00
Mark Thom
9837187183
add nth_partial_strings_tests for bugs raised in #1827 , #2381
2024-04-10 15:50:24 -06:00
Mark Thom
c2657cce37
use common test_framework module for several test suites
2024-04-10 15:47:31 -06:00
Mark
bc616ca7d8
move call_residue_vars/2 from atts.pl to iso_ext.pl
2024-01-25 12:40:24 -07:00
bakaq
f411fb1eb3
Tests for when/2 and solved bug
2023-12-11 12:28:59 -03:00
Mark
1e5bb2d3da
fix dif:vars_remove_goal/2 ( #2175 ), untabify forms.rs to appease format check
2023-11-20 14:21:18 -07:00
Mark
773d3f81fd
remove list remnants from stack iteration in printer when cyclic ( #2131 )
2023-10-24 14:10:11 -06:00
Mark
4ab3e23b1f
fix cycle detection in lists by looking backward analogously to the same process for structures ( #2130 )
2023-10-24 12:23:05 -06:00
Mark
bf46c4b5c1
use topo_sort to correct acyclic_term ( #2124 , #2125 )
2023-10-18 12:00:40 -06:00
Mark
43f0b6c28d
fix cyclicity detection through variables ( #2122 , #2123 )
2023-10-16 15:19:43 -06:00
Mark
dff2e73842
more eagerly check for cyclicity of variables in cycle detecting stackless iterator ( #2121 )
2023-10-15 17:43:29 -06:00
Mark
e2000859b6
add backward looking cyclicity check for variables in cycle detecting stackless iterator ( #2111 , #2117 )
2023-10-15 13:07:41 -06:00
Mark
3a6aee72a3
correct is_cyclic again for non-variable ref cells ( #2116 )
2023-10-15 01:28:42 -06:00
Mark
3fb2e451a2
improve cycle detection in detect_list_cycles ( #2111 )
2023-10-15 00:58:19 -06:00
Mark
7875b96956
simplify stackless iterator is_cyclic ( #2111 )
2023-10-14 23:56:46 -06:00
Mark
d96c9e00b7
correct more acyclic_term/1 issues ( #2111 , #2114 ), add acyclic_term tests
2023-10-14 18:38:10 -06:00
Mark
902b08e657
follow marked variables to end in eager_stackful_iter ( #2100 , #2101 )
2023-10-10 20:45:08 -06:00
Mark
77de570aa4
report pre-marked values from eager stackful iterator ( #2097 )
2023-10-10 12:56:27 -06:00
Mark
0ad4427f83
use eager_stackful_preorder_iter in variable_set, add term_variables/1 tests
2023-10-04 15:12:25 -06:00
Mark
1bfdea7527
rewrite ground_test, add tests for ground/1 ( #2075 )
2023-10-04 14:17:03 -06:00
bakaq
21c61b6e3a
Add tests for #2056
2023-09-30 21:33:42 -03:00
bakaq
cb79e83510
Avoid dif/1 attribute with empty list
...
Closes #1956
2023-09-21 14:00:37 -03:00
bakaq
cac52c0537
Run dif tests on cargo test
2023-09-21 12:14:27 -03:00
Mark Thom
8bf3d4ea71
fix tests, use '$first_answer' to print indentation before errors ( #1408 )
2022-04-09 20:32:52 -06:00
Mark Thom
d83b32a200
print variables instead of offsets in setup_call_cleanup tests
2022-03-08 22:05:54 -07:00
Mark Thom
cf1e315d72
add parser tests
2022-01-06 22:09:38 -07:00
Mark Thom
8ba61a1da1
defer installation of inference counter for call_with_inference_limit til after goals expanded
2022-01-06 21:44:41 -07:00
Mark Thom
cd129e32a7
fix bugs revealed by src/tests/builtins.pl
2022-01-06 21:44:41 -07:00
Markus Triska
ee054fd99c
several corrections to test cases
2021-12-01 19:45:36 +01:00
Skgland
e08c302756
fix beta build
2021-06-02 16:43:10 +02:00
panasenco
baed12f45e
Oops, we want to keep digits as characters in library(abnf), but as numbers in library(json).
2021-04-28 23:05:02 -07:00
panasenco
dfbf291725
Restructuring and improving documentation.
2021-04-28 22:22:20 -07:00
panasenco
0198fe90b6
Added ABNF grammar to library(charsio) as well as octet character type that it depends on. Modified library(json) to use the new ABNF grammar.
2021-04-27 22:48:03 -07:00
panasenco
02b89362b2
Replaced raw_chars//1 in library(pio) with seq//1 in library(dcgs).
2021-04-25 14:53:37 -07:00
panasenco
e0e812f95c
Added
aw_chars//1 to library(pio). Began using setup_call_cleanup/3 as suggested by @triska.
2021-04-24 21:29:50 -07:00
panasenco
2cbc7e4f9a
Another thorough rewrite of library(json) to better preserve the complete set of answers as much as possible and thereby write more elegant and simple code. Some performance gains too!
2021-04-23 10:30:38 -07:00
panasenco
828550687c
Rewrote many parts of library(json) to leave no choicepoints when generating JSON. However, the generating performance actually worsened slightly...
2021-04-22 15:21:27 -07:00
panasenco
d3caba4073
Now preserving distinction between ints and floats
2021-04-20 19:59:01 -07:00
panasenco
7e802706fe
Seem to be generating JSON correctly and at a good speed too!
2021-04-20 17:33:30 -07:00
panasenco
c87e3eac08
Removed CLP(Z) from library(json), achieving a 100x speedup in JSON parsing.
2021-04-20 17:30:41 -07:00
panasenco
5b1b12ec9e
Fixed forward slash special case issue, added a bunch of test files that were successfully read!
2021-04-20 17:30:41 -07:00
notoria
bd222ed2bf
Added a test for mod in CLP(Z)
2021-03-10 21:20:18 +01:00
Skgland
2f428b7261
split into lib and bin
...
* makes most pub things in src/ pub(crate) as not to expose things accidentally
* only those things needed by src/bin/scryer-prolog.rs and tests/scryer.rs
should be pub
* split src/main.rs into src/lib.rs and src/bin/scryer-prolog.rs
* add tests folder and run most of the files in src/tests with cargo test
added bytes method to Stream in src/machine/streams.rs to check if stdout is as expected
2021-02-28 19:21:30 +01:00
notoria
314baabf1d
More improvement on mod from CLP(Z)
2020-08-13 21:36:36 +02:00
notoria
c98e869564
Implemented the Debug trait for all data structures
2020-04-26 02:20:24 +02:00