Commit Graph

642 Commits

Author SHA1 Message Date
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
11026e2741 remove extraneous slashes in builtins.pl 2019-03-04 22:03:04 -07:00
Mark Thom
3d8c0a43a6 refactor to actual modules 2019-03-03 23:29:02 -07:00
Mark Thom
f458d12676 remove unification from dif/2 2019-03-03 18:14:05 -07:00
Mark Thom
f35008cbd6 condense reverse even further 2019-03-03 17:36:20 -07:00
Mark Thom
3fc0a230fa tighten reverse/2 2019-03-03 10:37:34 -07:00
Mark Thom
74521a93d3 improve reverse/2 2019-03-03 02:50:49 -07:00
Mark Thom
8ca1bb5688 eliminate redundant set_p function 2019-03-02 23:13:54 -07:00
Mark Thom
586375ce4c do not hard code arity in builtins.pl 2019-03-02 22:58:37 -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
9db7172bfe remove defunct dependency from reif.pl 2019-02-25 17:40:37 -07:00
Mark Thom
7f8c6eb3f5 make better use of can_be in between library 2019-02-24 15:15:00 -07:00
Mark Thom
dc89ed57f2 evacuate when allocating anon vars 2019-02-24 13:40:58 -07:00
Mark Thom
8f9c620a89 remove redundancy positivity check in repeat/1 2019-02-24 13:12:46 -07:00
Mark Thom
7edbb540bd use can_be and must_be in library(between) 2019-02-24 13:10:31 -07:00
Mark Thom
767f98eaa3 begin work on between library 2019-02-24 03:45:41 -07:00
Mark Thom
a9a0343815 add numlist/3 2019-02-24 03:38:07 -07:00
Mark Thom
67ae47a01a begin work on between library 2019-02-23 19:59:13 -07:00
Mark Thom
20b66e283f add correct error sources to bagof/3, setof/3, findall/4 2019-02-22 23:37:19 -07:00
Mark Thom
5155d4667f add examples from the power of prolog 2019-02-22 23:25:19 -07:00
Mark Thom
1d331757e2 add findall/4, bagof/3, setof/3 2019-02-22 23:22:25 -07:00
Mark Thom
0f01d37618 properly report deterministically successful queries 2019-02-22 19:38:49 -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
e66928725a remove clone from unwind_trail in copier.rs 2019-02-19 22:32:25 -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
896914b8e9 do not count calls to $reify_switch as inferences 2019-02-17 11:51:24 -07:00
Mark Thom
a898824b65 ensure stdin is not being locked more than once 2019-02-17 01:33:35 -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
10d5c00f4b polish freeze.pl and dif.pl 2019-02-15 21:04:20 -07:00
Mark Thom
818eeb6c57 correct attribute_goals/2 bug, add freeze/2, update README 2019-02-15 20:44:31 -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
3fb91fe0c8 update README 2019-02-14 22:05:47 -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