bakaq
b4fab5a806
Use '$skip_max_list'/4 in string_get_n_chars/4
2023-09-24 14:32:44 -03:00
bakaq
35d0042be1
Add phrase_from_stream/2 to library(pio)
2023-09-24 14:32:44 -03:00
Rujia Liu
9c43974747
Solves CRLF/CR issue by considering'\r' a layout_char #553 #2028
2023-09-24 19:10:40 +08:00
Mark
a5db117ef6
fix off-by-1 bug in ''/4 ( #2037 )
2023-09-23 18:32:32 -06:00
Mark
142e0c2c3a
don't parse bracketed non-operators as functor terms ( #2033 )
2023-09-23 14:26:28 -06:00
Mark
1c8cd85f6c
record compaction depth after reduce_op if '|' an operator ( #1905 )
2023-09-23 00:19:54 -06:00
Mark
c26e9436b4
generalize multifile/dynamic/discontiguous declarations over lists of predicate indicators ( #1586 )
2023-09-21 16:22:41 -06:00
Mark
b3239abea1
throw resource error if OpenOptions raises an error of uncategorized kind ( #1375 )
2023-09-21 14:36:53 -06:00
Mark Thom
81edd4592f
Merge pull request #2027 from bakaq/dif
...
Improvements to dif/2
2023-09-21 11:32:38 -06: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
bakaq
a64a765f32
Improved dif/2
2023-09-20 20:56:04 -03:00
infogulch
eecfeb2d03
Simplify maybe
...
Fix whitespace
2023-09-20 18:23:07 -05:00
Adrián Arroyo Calle
7cf6e77f4d
Use a SeedableRng to generate random numbers
2023-09-20 22:07:46 +02:00
Nicolas Luck
4968fa0024
Remove debugging println!
2023-09-18 19:31:56 +02:00
Nicolas Luck
5e55625733
Remove some debug println!s
2023-09-18 19:12:50 +02:00
Nicolas Luck
65f64e428e
Construct and return exception string
2023-09-18 13:25:27 +02:00
Nicolas Luck
d2f5291412
mthom's changes fixing the panic
2023-09-18 13:01:27 +02:00
Mark
9dc1c339ef
remove unnecessary Result return type from read_term_from_heap
2023-09-15 14:10:42 -06:00
Nicolas Luck
c86304b18e
Remove lib_toplevel.pl
2023-09-15 11:01:16 +02:00
Nicolas Luck
7c83a1fb8e
Cleanup code that's not needed anymore
2023-09-15 10:48:41 +02:00
Nicolas Luck
f02728aab3
Construct QueryResult from printer output
2023-09-15 10:44:59 +02:00
Nicolas Luck
48283c4dbc
mthom's changes to run_query with backtracking
2023-09-15 10:04:11 +02:00
Nicolas Luck
6bdd7f3a3f
mthom's revised run_query with manually created printer and some cleanup
2023-09-14 22:00:50 +02:00
Nicolas Luck
5fa68e253c
lib_machine tests should not be tokio/async
2023-09-13 19:51:57 +02:00
Jacob
adb5fcf708
Upgrade dashu and some changes
2023-09-13 12:29:12 -04:00
Nicolas Luck
136463c92e
Merge branch 'master' into library-use-case
...
# Conflicts:
# Cargo.toml
# src/atom_table.rs
# src/bin/scryer-prolog.rs
# src/http.rs
# src/machine/mock_wam.rs
# src/machine/mod.rs
# src/machine/system_calls.rs
2023-09-13 18:13:14 +02:00
Nicolas Luck
ef56193c44
Use write_term_to_heap as suggest, clean up, and include error in comment
2023-09-13 17:17:02 +02:00
Mark
de440a8c92
get rid of OssifiedOpDir, DBRef, simplify current_op/3
2023-09-11 15:36:15 -06:00
Fayeed Pawaskar
7f0536b51d
Merge branch 'master' into dashu-fixes
2023-09-10 21:51:02 +05:30
Fayeed Pawaskar
af76659830
Removed value method and use deref to get type
2023-09-10 21:40:22 +05:30
Markus Triska
85cc4a80d0
remove code that is not needed in Scryer Prolog
2023-09-09 07:46:01 +02:00
Markus Triska
6fe85c5779
remove more attributes so that they do not appear in residual goals
2023-09-09 07:46:01 +02:00
Markus Triska
b38a56e7d3
move compatibility predicates and meta_predicate/1 declarations so that they are correctly taken into account
2023-09-09 07:46:01 +02:00
Markus Triska
ec67752db4
shorter partition/5, relying on first instantiated argument indexing
2023-09-09 07:32:06 +02:00
Markus Triska
ad4c17fbb6
add meta_predicate/1 declaration for include/3 and exclude/3
2023-09-09 07:32:06 +02:00
Markus Triska
672979c515
shorter include/3 and exclude/3, relying on improved indexing
2023-09-09 07:32:06 +02:00
Markus Triska
efcc2b81cd
add licensing information, addressing part of #1798
2023-09-09 07:32:06 +02:00
Markus Triska
182afe3b7d
update comment
2023-09-08 22:34:24 +02:00
Rujia Liu
b6ce6b7cdb
Basic WebAssembly support with minimal Javascript API #615 . Currently 6/12 crypto functions supported. Tested in browser with all default features disabled.
2023-09-08 17:27:22 +08:00
Mark
a0b5a24853
check atom == ',' in ambiguity_check mirroring logic in print_op_addendum ( #2000 )
2023-09-05 14:56:26 -06:00
Mark
fa11d6bdd4
remove error printing redundancy and inconsistent state resulting from file_load_cleanup ( #1995 )
2023-09-05 13:53:57 -06:00
Mark Thom
a9aef2bc84
Merge pull request #1980 from Skgland/atomtable
...
make AtomTable consurrency safe
2023-09-05 12:32:20 -06:00
Mark Thom
bf2b73706a
Merge pull request #1997 from triska/countall
...
Corrections to countall/2
2023-09-05 12:04:52 -06:00
Mark
83ebce86b6
call_with_inference_limit/3 should fail if inference limit is exceeded and R term is not inference_limit_exceeded ( #1977 )
2023-09-05 11:51:06 -06:00
Markus Triska
1967518fa2
FIXED: documentation of countall/2 ( #1976 )
2023-09-05 19:42:55 +02:00
Bennet Bleßmann
5928d64d7a
make F64Table concurency safe
2023-09-05 19:39:59 +02:00
Bennet Bleßmann
c7ec5a13a5
remove locks from AtomTable
...
there are technically still two locks
- the Mutex to serialize consurrent updates to the AtomTable
- the RwLock as part of GLOBAL_ATOM_TABLE
the former is the age lock of RESIZE ATOM TABLE in <https://arxiv.org/pdf/1608.00989.pdf >, though we use it for the whole update as we don't match the whole structure and can't reserve an atom slot as is, so we need to also lock concurrent updates without resizing
the later should be uncontendet as we only write AtomTable::new iff the current value is a dangling Weak
2023-09-05 19:39:59 +02:00
Bennet Bleßmann
01aeb7515d
[WIP] move towards lockless AtomTable
2023-09-05 19:39:46 +02:00
Markus Triska
d54c3369b3
FIXED: countall/2 for zero solutions ( #1996 )
...
Example:
?- countall(false, 0).
true.
2023-09-05 19:39:05 +02:00