Euan Lacy
aaa75c3ffc
wip: basic completion of predicates
2022-05-10 18:10:18 +01:00
Mark Thom
9cefb33388
correct loading of variable name strings in write_term/3
2022-03-08 22:00:12 -07:00
Mark Thom
f3f3dccf8e
reference partial strings properly in read_term ( #1271 )
2022-02-06 15:14:18 -07:00
Mark Thom
37e34c5209
reset instruction pointers with calls, make HCPrinter::range_from safe ( #1233 )
2022-01-31 21:24:19 -07:00
Mark Thom
a562793fce
don't read into the heap while incrementing self.s ( #1233 , #1245 )
2022-01-25 20:37:29 -07:00
Mark Thom
06313cac64
update README.md
2022-01-07 00:17:17 -07:00
Mark Thom
955e1799c8
flatten the instruction dispatch loop
2022-01-06 22:09:36 -07:00
Mark Thom
3db86f1e25
relocate most instruction routines from MachineState to Machine
2022-01-06 21:46:23 -07:00
Mark Thom
6f9b6a29c4
remove LocalCodePtr::IndexingBuf
2022-01-06 21:44:41 -07:00
Mark Thom
708c3bc3ce
dereference first argument of (is)/2
2022-01-06 21:44:41 -07:00
Mark Thom
b24df6e195
properly iterate over read terms in MachineState::read_term
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
Mark Thom
975c1ca62c
fix stream errors
2022-01-06 21:44:41 -07:00
Mark Thom
0404c3bd94
use new heap term representation
2022-01-06 21:44:38 -07:00
Mark Thom
9d06229cba
create read_term/3 variable lists in order of variable occurrence within terms
2021-12-23 13:31:49 -07:00
Mark Thom
5d2b0377d8
reset attributed variables queue when backtracking ( #678 , etc.)
2021-09-27 19:12:24 -06:00
Mark Thom
b21a096516
add read/2 and nl/1 ( #896 )
2021-05-01 16:12:00 -06:00
Mark Thom
d0b25de554
add user_error stream ( #917 )
2021-04-30 21:58:03 -06:00
Mark Thom
3f1cfd2995
introduce bind_fn, use in applicable Fact/Query instructions ( #841 )
2021-02-28 16:19:06 -07:00
Mark Thom
101ed9a633
add error value to occurs_check prolog flag ( #783 )
2021-02-28 11:44:23 -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
a367812348
add occurs_check flag ( #309 )
2021-02-28 10:41:32 -07:00
Mark Thom
064d261357
implement logical update semantics for dynamic database predicates
2021-02-27 23:33:10 -07:00
Mark Thom
6c447da730
no longer generate a choice point in bb_b_put/2 ( #742 )
2021-02-22 18:27:30 -07:00
Mark Thom
0ef5f7f9b1
issue singleton variable warnings from loader.pl ( #812 )
2021-02-21 19:20:42 -07:00
Mark Thom
a323a4dd8e
wrap stream instances in one Rc<RefCell<..>>, use Ref/RefMut to access stream options
2021-02-21 19:20:42 -07:00
Mark Thom
1dabe95899
remove tidy_trail
2021-02-07 15:39:48 -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
Skgland
b53ef148a0
remove extern crate declaration and fix outfall (macros now need to be imported into scope)
...
using use declarations in main.rs so that use paths don't need to be updated as well, this will be done in a later commit
2021-02-06 22:12:31 +01: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
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
Mark Thom
33325f1574
remove vestigial prolog/ directory ( #444 )
2020-06-12 18:26:38 -06:00