Commit Graph

56 Commits

Author SHA1 Message Date
Mark Thom
30926a71ab streamline variable search in heap_print.rs 2018-05-06 22:10:51 -06:00
Mark Thom
885d7c04e3 simplify detection of cycles in printer 2018-05-05 13:20:06 -06:00
Mark Thom
81a199836d properly handle cyclic terms in the printer. 2018-05-05 12:33:29 -06:00
Mark Thom
d6495c8195 add support for printing cyclic terms. 2018-05-05 01:53:05 -06:00
Mark Thom
c369ce9a7f add access to HeapVarDict to the printer. 2018-05-04 20:51:02 -06:00
Mark Thom
2df82e6b01 abbreviate names in heap_iter.rs 2018-05-04 19:43:43 -06:00
Mark Thom
11800532c9 fix errors emitted by sort and keysort, add tests, add support for Max = -1 to '$skip_max_list' 2018-05-03 20:15:45 -06:00
Mark Thom
29356fbc3b Merge branch 'master' of http://github.com/mthom/rusty-wam 2018-05-03 17:37:12 -06:00
Mark Thom
e7c2c2cedd correct sort/keysort refusing [] 2018-05-03 17:36:59 -06:00
Mark Thom
76bae21ff6 correct keysort type error (re: #34) 2018-05-03 11:52:33 -06:00
Mark Thom
d69bc4ed10 fix keysort error detection bugs 2018-05-02 21:52:34 -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
b23f17678c Merge branch 'master' of http://github.com/mthom/rusty-wam into develop 2018-05-01 20:36:27 -06:00
Mark Thom
e38bf58e6c move existence_error function in machine_st_impl.rs 2018-05-01 20:36:19 -06:00
Mark Thom
d51c950b77 clean up detect_cycles 2018-05-01 10:52:57 -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
516b67460d add '', type checking for incomplete lists in sort, keysort (re: #17) 2018-04-29 21:53:20 -06:00
Mark Thom
989d44d702 make module code entries immutable (re: issue #27) 2018-04-18 19:24:32 -06:00
Mark Thom
ed9cca0750 throw exception when predicate not found 2018-04-09 21:27:50 -06:00
Mark Thom
fe481fedce throw exceptions when calling non-existent predicates. broken. 2018-04-08 15:17:58 -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
a937eb4d8c clean up call clause stuff. 2018-03-26 18:16:39 -06:00
Mark Thom
e206c8b7fb remove extraneous code. 2018-03-19 20:01:32 -06:00
Mark Thom
612835500c remove redundant code from arith_eval_by_metacall 2018-03-18 19:25:45 -06:00
Mark Thom
9430bee825 correct delayed evaluation for negation, rational decls 2018-03-17 19:04:13 -06:00
Mark Thom
23afcdd6d4 remove extraneous comments. 2018-03-17 15:46:12 -06:00
Mark Thom
a66049a321 refactor BuiltInInstruction 2018-03-17 15:45:17 -06:00
Mark Thom
64ab9a0337 remove DynamicIs 2018-03-17 15:01:31 -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
acdb3f2c45 add sort, keysort. 2018-03-11 17:37:29 -06:00
Mark Thom
7500465b38 add atom predicate. 2018-03-10 15:26:35 -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
8b566ab4e5 set compound to succeed on non-empty lists. 2018-02-16 22:34:27 -07:00
Mark Thom
61bc5a2a29 fix compile_seq, variable printing on standalone inlines. 2018-02-16 22:18:17 -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
a1fb4f529b move several builtins to control. 2018-02-12 18:30: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