Commit Graph

65 Commits

Author SHA1 Message Date
Mark Thom
7455c2e9db add support for callable if-then and disjunct 2018-05-12 00:30:34 -06:00
Mark Thom
ba7e7ac895 throw exception when call-ing a system instruction. 2018-05-10 23:08:56 -06:00
Mark Thom
bae107f8cd eliminate need for embedded, handwritten WAM code. 2018-05-09 22:58:23 -06:00
Mark Thom
b09c20670b shift to builtins 2018-05-08 22:38:49 -06:00
Mark Thom
1a0f50200f system calls preliminary 2018-05-07 22:27:58 -06:00
Mark Thom
3c72441f68 add proper error messages for keysort and sort, (re: issues #30, #32) 2018-05-02 21:33:03 -06:00
Mark Thom
0dec988337 add error handling appartus 2018-05-02 21:24:43 -06:00
Mark Thom
0458a70527 handle non-list cases in '', add '' as a built-in (re: issue #31) 2018-05-01 10:11:27 -06:00
Mark Thom
989d44d702 make module code entries immutable (re: issue #27) 2018-04-18 19:24:32 -06:00
Mark Thom
32ebe1a47f correct mishandled blocking of cuts 2018-04-08 11:29:30 -06:00
Mark Thom
a7445e856a properly handle cuts in conditionals 2018-04-08 00:33:54 -06:00
Mark Thom
cf741f365c limit hash lookups to metacall 2018-04-02 13:50:01 -06:00
Mark Thom
7b160199fd add cyclic_term 2018-03-28 23:41:19 -06:00
Mark Thom
94939e793b add call support for acyclic_term 2018-03-28 21:20:50 -06:00
Mark Thom
b7f926bade clean up call clause stuff. 2018-03-26 18:16:23 -06:00
Mark Thom
d8bcf47462 refactor ControlInstruction 2018-03-17 01:26:50 -06:00
Mark Thom
ea1414e738 correct sort, keysort 2018-03-11 19:51:25 -06:00
Mark Thom
7500465b38 add atom predicate. 2018-03-10 15:26:35 -07:00
Mark Thom
6d3bde1144 correct module bugs 2018-03-04 21:37:29 -07:00
Mark Thom
0c66743db5 correct module bugs 2018-03-04 21:35:30 -07:00
Mark Thom
8a63623516 add provisional module support. 2018-03-02 22:28:12 -07:00
Mark Thom
07675b3675 fix exception handling when thrown by throw_exception, and within setup_call_cleanup and call_with_inference_limit. 2018-02-25 23:43:37 -07:00
Mark Thom
c133931134 add fixes, further test cases. 2018-02-25 22:38:28 -07:00
Mark Thom
cf9db43d5b major refactor. 2018-02-25 12:13:07 -07:00
Mark Thom
8d182b3f02 fix bugs in call_with_inference_limit 2018-02-23 00:16:40 -07:00
Mark Thom
9aac3cb086 add compare predicate. 2018-02-21 23:21:18 -07:00
Mark Thom
5de03444eb fix bugs in call_with_inference_limit 2018-02-21 19:46:15 -07:00
Mark Thom
7313472a70 add call_with_inference_limit 2018-02-19 22:34:56 -07:00
Mark Thom
280dbe9539 clear unintended whitespace 2018-02-16 16:21:37 -07:00
Mark Thom
cf67b938c0 add structural equality and inequality predicates. 2018-02-15 18:31:03 -07:00
Mark Thom
ae323a0cdf add term comparison operators. 2018-02-13 23:34:44 -07:00
Mark Thom
e7560150b0 add eq, neq predicates. 2018-02-10 23:34:30 -07:00
Mark Thom
9c1b48865b add ground/1. 2018-02-08 23:51:05 -07:00
Mark Thom
1b4d1c04c9 finalize transition to CutPolicy trait object. 2018-02-07 21:46:40 -07:00
Mark Thom
1bf9c0d205 defer cut actions to cut policy trait objects. 2018-02-06 23:41:31 -07:00
Mark Thom
9d5f897fed add more type predicates. 2018-02-05 20:10:41 -07:00
Mark Thom
b99f5064f0 fix arg_ bug. 2018-02-03 12:24:43 -07:00
Mark Thom
23f81946c5 reverse builtin instructions 2018-02-02 17:10:57 -07:00
Mark Thom
9c2e8dfd72 fix setup_call_cleanup bug 2018-02-01 23:39:03 -07:00
Mark Thom
7b5a2786da add support for setup_call_cleanup 2018-02-01 23:03:57 -07:00
Mark Thom
60440ea86b tighten =.. code 2018-01-27 15:54:05 -07:00
Mark Thom
4f645b4664 add length, =.., more tests of builtins. 2018-01-27 15:37:59 -07:00
Mark Thom
41dc8e8d6a inline and expand conditionals whenever possible 2018-01-23 21:01:53 -07:00
Mark Thom
f28b975343 add call support for numeric comparisons. 2018-01-19 19:39:46 -07:00
Mark Thom
f9b53856ac add callable is/2 2018-01-19 00:08:55 -07:00
Mark Thom
d8be7b5b49 add an atom table. 2018-01-16 23:26:59 -07:00
Mark Thom
a4022d569f fix duplicate_term bug 2018-01-14 23:05:15 -07:00
Mark Thom
58ba368280 mark structures with their fixity 2018-01-14 21:48:10 -07:00
Mark Thom
848068c734 transition to reference counted constants 2018-01-09 22:38:17 -07:00
Mark Thom
d49157bef6 add provisional functor and arg support, and give ';' and '->' their true semantics 2018-01-08 21:14:19 -07:00