Commit Graph

71 Commits

Author SHA1 Message Date
Mark Thom
6e4b76a3b4 compile special instructions for partial strings when recognized 2020-04-11 21:53:28 -06:00
Mark Thom
a3c3afba48 fix list index offset bug (#314) 2020-04-06 16:15:36 -06:00
Mark Thom
141f3bcec3 harmonize partial strings with complete strings (#276), make Addr a copyable type 2020-04-03 10:22:46 -06:00
Mark Thom
194e5dc94e initial commit for merge 2020-03-26 22:01:23 -06:00
Mark Thom
3bf1cbbe6c push of preliminary delimited continuations library cont.pl (#136) 2019-12-20 22:27:49 -07:00
Mark Thom
ed985c3cfe move more of the toplevel from rust into prolog 2019-11-16 00:26:15 -07:00
Mark Thom
e656e7fbae add sign/1 (#216) and gcd/2 (#217) as evaluable functors, update the README 2019-10-27 13:05:05 -06:00
Yu Ding
adb469f627 Upgrade to edition. Bump up edition in Cargo.toml 2019-10-14 00:23:32 -07:00
Mark Thom
1d41489381 correct off by 1 error in verify_attrs_interrupt, revert to previous lists.pl 2019-10-12 19:14:33 -06:00
Mark Thom
8c4c70b089 fix verify_attributes_stepper bug: proceed now considered a head instruction 2019-10-12 03:26:50 -06:00
Atul Bhosale
1273e2d52d Format code using 'cargo fmt' 2019-09-23 19:35:37 +07:00
Mark Thom
8207fdea40 replace HashMap with IndexMap and HashSet with IndexSet 2019-09-22 17:31:25 -06:00
Mark Thom
380aae85bd add wam_instructions/2 to render predicate instructions as lists of functors 2019-09-22 16:06:50 -06:00
Mark Thom
f344150322 revamp evaluable functors, add missing evaluable functors 2019-05-12 20:14:00 -04:00
Mark Thom
18a9a6434f delay attributed variables goal, naively correct dif/2 2019-04-24 20:37:31 -06:00
Mark Thom
e3e0473b69 fix term_variables, add (^)/2 as an actual evaluable functor 2019-04-01 09:04:50 -06:00
Mark Thom
da0e1b9436 add assoc.pl, add max evaluable functor 2019-03-08 22:31:12 -07:00
Mark Thom
3d8c0a43a6 refactor to actual modules 2019-03-03 23:29:02 -07:00
Mark Thom
e4cb904470 correct inlined calling bug in last call, add dynamic database manipulation predicates 2019-03-02 16:57:45 -07:00
Mark Thom
2fb5408ab5 add assertz/1 and asserta/1 2019-03-02 00:27:40 -07:00
Mark Thom
818a971833 start enabling the dynamic database 2019-02-28 21:49:07 -07:00
Mark Thom
1d331757e2 add findall/4, bagof/3, setof/3 2019-02-22 23:22:25 -07:00
Mark Thom
6ba47b6b08 use acyclic iteration when projecting onto query vars 2019-02-22 17:48:49 -07:00
Mark Thom
f41b5f465e add findall/3 2019-02-22 00:56:04 -07:00
Mark Thom
2467f6c711 add call_residue_vars/2 2019-02-18 21:13:56 -07:00
Mark Thom
b7dd76bf37 add library(reif) 2019-02-16 16:34:38 -07:00
Mark Thom
9abe70113a correct project_attributes, correct compare_term_test and eq_test, polish attribute_goals/2 2019-02-14 21:59:24 -07:00
Mark Thom
cd5549ee5b fix attribute_goals/2 display bugs, cycle detection bug 2019-02-14 01:12:52 -07:00
Mark Thom
f616b4ddfd prepare to add project_attributes/2 and attribute_goals/2 2019-02-13 14:18:41 -07:00
Mark Thom
197d079281 call goals in one batch after rebinding variables, add minatotask.pl, update README 2019-02-09 13:57:03 -07:00
Mark Thom
661f9b7414 add preliminary support for verify_attributes/3 2019-02-07 23:33:55 -07:00
Mark Thom
046569b6a9 flatten CompiledQuery and CompiledFact in Code, remove CompiledQuery 2019-02-06 22:25:41 -07:00
Mark Thom
3cfbbb23a3 introduce a better binding scheme for attributed variables 2019-02-03 15:16:30 -07:00
Mark Thom
f51405bc04 fix bug in DeleteAttribute 2019-02-02 19:25:12 -07:00
Mark Thom
8f771792b3 add Addr::AttVar to address ordering 2019-02-02 12:20:39 -07:00
Mark Thom
fcffb90549 add atts.pl, various fixes 2019-01-30 21:31:48 -07:00
Mark Thom
4f87fb8535 add AttrVar variant to Addr 2019-01-26 20:46:37 -07:00
Mark Thom
6e735bc2d4 add TrailRef type for trail 2019-01-26 20:06:27 -07:00
Mark Thom
91b85db90c flatten bracketed commas in dcgs 2019-01-26 14:38:54 -07:00
Mark Thom
ef3d3aa01a fix unsafe variable handling 2019-01-24 23:38:53 -07:00
Mark Thom
498fe5247d prepare to add bracketing conditions to heap_print 2019-01-20 23:56:15 -07:00
Mark Thom
0dabb3f370 add op info to structures and atoms 2019-01-19 22:27:40 -07:00
Mark Thom
ca7e62928b clone in situ compiled terms 2019-01-19 17:05:29 -07:00
Mark Thom
c9f6ab984f add dynamic module resolution calls 2019-01-06 00:15:32 -07:00
Mark Thom
da731ad1f9 add module-level goal_expansion and term_expansion 2019-01-05 22:02:06 -07:00
Mark Thom
042779cff9 add read support for user:term_expansion and user:goal_expansion 2019-01-05 19:22:38 -07:00
Mark Thom
36fdc8e822 do not add expansions behind module boundaries until the modules are added 2019-01-03 19:43:50 -07:00
Mark Thom
2b774f3041 correct non-termination of expand_goal and expand_term 2018-12-15 00:04:56 -07:00
Mark Thom
47a1cfaddc correct non-termination of expand_goal and expand_term 2018-12-14 19:10:38 -07:00
Mark Thom
45a68d4bc2 add expand_goal, make user:term_expansion and user:goal_expansion work properly within modules 2018-12-11 22:57:11 -07:00