Commit Graph

269 Commits

Author SHA1 Message Date
Mark Thom
a6d3f39152 add ordsets library, domain.pl attributed variables example 2019-03-10 22:33:09 -06:00
Mark Thom
b1d061f76b eliminate generation of dynamic clauses when compiling term expansion clauses 2019-03-09 17:36:27 -07:00
Mark Thom
0d41b27abb remove dynamic code indices when modules are redefined. 2019-03-09 14:19:49 -07:00
Mark Thom
9f398b2552 perform term and goal expansion on asserted dynamic predicates inside modules 2019-03-09 13:41:33 -07:00
Mark Thom
870aa7651e propagate dynamic database changes to toplevel 2019-03-09 03:19:32 -07:00
Mark Thom
adf9629333 stop module dynamic predicate modifications from taking on the user module index. 2019-03-09 00:37:58 -07:00
Mark Thom
92c36aa0d9 properly update dynamically updated predicates in module indices 2019-03-08 23:11:06 -07:00
Mark Thom
da0e1b9436 add assoc.pl, add max evaluable functor 2019-03-08 22:31:12 -07:00
Mark Thom
089428b8c4 split dynamic database keys across modules 2019-03-08 21:22:15 -07:00
Mark Thom
267d1a9f5f improve Rust-generated permissions errors 2019-03-07 23:46:01 -07:00
Mark Thom
3cb1996e61 make clause/2 global in scope 2019-03-07 23:32:41 -07:00
Mark Thom
933c19c317 correct clause/2 to work only on properly scoped terms 2019-03-07 22:55:54 -07:00
Mark Thom
b1e47cc465 further cross-module dynamic database fixes 2019-03-07 22:01:03 -07:00
Mark Thom
72f759da40 correct mismanagement of dynamic database across modules 2019-03-07 20:27:55 -07:00
Mark Thom
72c8807ff1 update toplevel exports when updated dynamically 2019-03-06 23:35:50 -07:00
Mark Thom
d4de3c2003 update toplevel exports when updated dynamically 2019-03-06 22:33:16 -07:00
Mark Thom
b69bf71ff4 support module modification using dynamic database predicates 2019-03-06 21:53:08 -07:00
Mark Thom
07fe30c970 correct abolish/1 2019-03-06 09:54:27 -07:00
Mark Thom
d49917c88f give module bounds a better respect for dynamic predicates 2019-03-06 09:17:24 -07:00
Mark Thom
c8ea788720 give dynamic predicates a better respect for module bounds 2019-03-06 00:51:21 -07:00
Mark Thom
6439d09733 give dynamic predicates a better respect for module bounds 2019-03-06 00:09:55 -07:00
Mark Thom
20e9042350 refactor compile_work 2019-03-05 00:47:12 -07:00
Mark Thom
14f05a67e3 separate constraint checks and code addition into separate phases in machine::compile 2019-03-05 00:17:56 -07:00
Mark Thom
e51e816178 current_predicate skips undefined predicates 2019-03-04 22:44:43 -07:00
Mark Thom
e4cc54104e add another test, add unwind_protect! 2019-03-04 22:34:17 -07:00
Mark Thom
3d8c0a43a6 refactor to actual modules 2019-03-03 23:29:02 -07:00
Mark Thom
8ca1bb5688 eliminate redundant set_p function 2019-03-02 23:13:54 -07:00
Mark Thom
77652d4458 correct inlining calling in last call context 2019-03-02 22:57:07 -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
dc89ed57f2 evacuate when allocating anon vars 2019-02-24 13:40:58 -07:00
Mark Thom
7edbb540bd use can_be and must_be in library(between) 2019-02-24 13:10:31 -07:00
Mark Thom
67ae47a01a begin work on between library 2019-02-23 19:59:13 -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
0453435bcd change project_attributes to use attribute vars queue 2019-02-20 19:34:31 -07:00
Mark Thom
bf62fd7f78 refactor parts of machine_state_impl.rs that consume copier.rs 2019-02-19 22:01:50 -07:00
Mark Thom
b710112df2 refactor copier.rs 2019-02-19 22:00:13 -07:00
Mark Thom
2467f6c711 add call_residue_vars/2 2019-02-18 21:13:56 -07:00
Mark Thom
a460e84c57 sort attribute goals before deduplicating them linearly 2019-02-17 12:23:25 -07:00
Mark Thom
023fec0d9d fix term expansion bug 2019-02-17 00:55:22 -07:00
Mark Thom
b7dd76bf37 add library(reif) 2019-02-16 16:34:38 -07:00
Mark Thom
d2afd2dd19 cleanup accessors, various other things 2019-02-16 14:40:56 -07:00
Mark Thom
74a0f8b899 correct attribute_goals/2 bug, add freeze/2, update README 2019-02-15 20:44:15 -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
7edc2567a8 call verify_attributes/3 once per module 2019-02-12 18:12:18 -07:00