Nicolas Luck
0c9740fe52
Fix wasm warnings
2023-10-17 22:07:38 +02:00
Bennet Bleßmann
01aeb7515d
[WIP] move towards lockless AtomTable
2023-09-05 19:39:46 +02:00
Bennet Bleßmann
13cbff7eab
[WIP] fix deadlock in AtomTable::build_with
2023-09-05 19:12:22 +02:00
Skgland
86166dbf25
[WIP] make AtomTable concurrentcy ready
2023-09-05 19:12:22 +02:00
Skgland
b2130c2a48
run cargo fmt
2023-09-05 19:12:17 +02:00
Rujia Liu
25d4950216
Allow users to disable optional features. Needed for wasm32 support (see #615 ).
2023-08-21 10:01:24 +08:00
Mark
fd7f24e265
remove EMIT_NEWLINE ( #1900 )
2023-07-22 21:42:40 -06:00
Mark
9a7862c322
correct max_depth option ( #1876 )
2023-07-22 11:11:23 -06:00
Mark
dcd7360b17
add EMIT_NEWLINE to add newlines to readline input only after query terms begin to be read ( #1074 , #1897 )
2023-07-20 09:39:06 -06:00
Mark
85bc544fb9
dereference TermWriteResult variables sooner in read_term_body ( #1894 )
2023-07-18 15:39:51 -06:00
Mark
a154a34f87
omit anonymous variables from read_term variable_names and singletons lists
2023-07-17 13:20:10 -06:00
Mark
86c90d77dd
do a better job handling EOF in read_term ( #1887 )
2023-07-17 13:19:30 -06:00
Mark
c8b9059289
refine EOF handling more ( #1873 )
2023-07-09 10:29:47 -06:00
Mark
b8a6882a27
refine EOF handling
2023-07-08 22:25:30 -06:00
Mark
067b5998ee
clarify EOF error across stream types and predicates ( #1867 , #1870 )
2023-07-08 13:38:52 -06:00
Mark
b0566e4150
use lexer to detect remaining layout in parse_number_from_string ( #1773 )
2023-06-30 17:18:10 -06:00
Mark
bb09de1805
fix ReadlineStream peek_char using CharReader
2023-06-29 14:58:15 -06:00
Mark
0e583d620a
implement new disjunction compilation
2023-06-23 14:11:31 -06:00
Mark Thom
fd97b84916
build partial strings using PStrLoc in write_term_to_heap ( #1627 )
2022-10-26 23:36:07 -06:00
Mark Thom
1ffbf63d20
inline metacalls
2022-10-26 23:36:07 -06:00
Mark Thom
bef8eb538c
throw a representation error if max arity is exceeded ( #1483 )
2022-05-22 00:03:55 -06:00
Mark Thom
4d23542ef3
add max arity checks at various stages ( #1459 )
2022-05-21 12:32:48 -06:00
Euan Lacy
c2a87f898e
fix: remove unnecessary string & vec allocations
2022-05-10 18:10:18 +01:00
Euan Lacy
aaa75c3ffc
wip: basic completion of predicates
2022-05-10 18:10:18 +01:00
Mark Thom
0f502fff84
compact lists of characters to partial strings in read_term_from_heap ( #1452 , #1453 )
2022-05-03 19:12:16 -06:00
Mark Thom
2173a8e3cb
recognize missing syntax errors ( #1354 , #1361 )
2022-03-22 22:48:51 -06:00
William Kral
5f1f07e5a1
Add --no-add-history flag
...
Flag prevents the input stream from saving terms to ~/.scryer_history
when set. Use the flag when running tests to increase test isolation.
2022-03-10 21:48:41 -08:00
Mark Thom
66c209f9e4
reset ReadlineStream from read_query_line ( #1317 , #1285 )
2022-03-05 17:39:13 -07:00
Mark Thom
955e1799c8
flatten the instruction dispatch loop
2022-01-06 22:09:36 -07:00
Mark Thom
39efc12dc8
generate heap_loc cells to refer to 0-arity atoms in read.rs
2022-01-06 21:44:41 -07:00
Mark Thom
0404c3bd94
use new heap term representation
2022-01-06 21:44:38 -07: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
Mark Thom
0747697d10
add lines read from devour_whitespace ( #836 )
2021-02-28 02:09:53 -07:00
Mark Thom
590a0b8077
update the parser with the number of lines already read by the underlying stream ( #836 )
2021-02-27 23:56:58 -07:00
Mark Thom
1a9f6f06df
consume whitespace before reading a term in loader.pl, modify prolog_load_context at file key to better reflect loading context, use it when reporting singleton variables ( #812 )
2021-02-22 13:23:22 -07:00
Mark Thom
0ef5f7f9b1
issue singleton variable warnings from loader.pl ( #812 )
2021-02-21 19:20:42 -07:00
Skgland
5041042925
rename prolog_parser_rebis to prolog_parser
...
also remove remaining extern crate statements that slipped through earlier
2021-02-06 22:13:34 +01:00
Skgland
8e5954f36f
remove use statements from main.rs that temporary replaced extern crate and fixed paths that previously used them
2021-02-06 22:13:04 +01:00
Mark Thom
3f950490f9
set rustyline to check the cursor position ( #802 ), don't add .pl extension to files in loader.pl ( #800 )
2021-02-06 13:47:26 -07:00
Mark Thom
a239007db0
target prolog_parser_rebis on crates.io
2021-01-30 22:03:07 -07:00
Mark Thom
a4d15bfb88
move to a predicate-based module system, move to loader.[rs|pl]-based compilation, add support for incremental clause compilation
2021-01-30 21:07:51 -07:00
brightly-salty
4854da4805
Replace dirs with dirs-next
2020-12-15 06:59:26 -06:00
Adrián Arroyo Calle
e2796dd351
History file support (Rustyline 7.0)
2020-12-06 23:16:25 +01:00
Mark Thom
4f15802fbc
reconcile '[]' and [] ( #644 ), solve remaining conformity issues ( #648 ), move (-->) from dcgs.pl to builtins.pl ( #649 )
2020-08-02 23:35:53 -06:00
notoria
ac00ae4daf
Improved readline
2020-07-31 21:16:33 +02:00
Mark Thom
33325f1574
remove vestigial prolog/ directory ( #444 )
2020-06-12 18:26:38 -06:00