Commit Graph

94 Commits

Author SHA1 Message Date
Mark Thom
2c1c1b7d12 migrate to rustyline, add history support 2019-09-26 11:25:05 -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
40500ca2d6 print line numbers to trace the location of parsing errors 2019-09-17 22:50:32 -06:00
Mark Thom
9d2ac9e235 address issue #153 2019-09-05 22:43:50 -06:00
Mark Thom
2c880b2bc0 address issues #143, #150, #155 2019-09-02 16:53:31 -04:00
Mark Thom
39d5e6a2f9 correct for issue #145 2019-06-14 09:00:43 -04:00
Mark Thom
f344150322 revamp evaluable functors, add missing evaluable functors 2019-05-12 20:14:00 -04:00
Anton Kochkov
580dc761d5 Remove unnecessary mutability 2019-05-08 14:09:33 +08:00
Mark Thom
3547ae2db4 quote solo characters wherever they lead atoms 2019-05-05 22:48:19 -04:00
Mark Thom
bf8a2ab6a6 add variable_names as a write option 2019-05-05 00:58:56 -04:00
Mark Thom
3fd274c583 add remaining atomic term processing builtins, rename (=@=)/2 to variant/2, address issue #133 2019-04-30 20:55:53 -06:00
Mark Thom
14d629492d add unify_with_occurs_check/2 2019-04-28 22:23:34 -06:00
Mark Thom
9dbadac14f correct various bugs 2019-04-28 21:09:56 -06:00
Mark Thom
6be03a7f7a add number_chars/2 2019-04-28 14:36:38 -06:00
Mark Thom
531d8b3352 re: issue #120 2019-04-27 00:40:00 -06:00
Mark Thom
b07a19fc47 address issues #114, #115 2019-04-25 09:10:52 -06:00
Mark Thom
c8c8c5abae address issues #104, #105, #103 2019-04-20 20:13:19 -03:00
Mark Thom
e089c8bdd2 fix conformity testing #274 2019-04-18 20:32:50 -06:00
Mark Thom
ae90554378 read from streams. 2019-04-13 18:40:17 -06:00
Mark Thom
fb0b7085b4 fix more conformity errors 2019-04-06 17:44:04 -06:00
Mark Thom
16eadc7412 correct for issues #88, #89, #90, conformity test #208. 2019-04-06 09:46:42 -06:00
Mark Thom
e3e6f926c7 add atom_length/2, atom_chars/2, atom_codes/2 2019-04-05 23:00:53 -06:00
Mark Thom
272b4f6d8d add current_op/3 2019-04-05 21:25:49 -06:00
Mark Thom
3912a4772d fix conformity errors 2019-04-04 22:51:00 -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
a15ebd20c1 add support for char codes 2019-03-31 19:48:40 -06:00
Mark Thom
3e67400bd3 specially handle commas 2019-03-30 21:31:57 -06:00
Mark Thom
0aefcf7eae add op/3 to builtin predicates 2019-03-30 18:14:47 -06:00
Mark Thom
f55968b1b8 properly demarcate ops in dbrefs 2019-03-30 13:38:03 -06:00
Mark Thom
381ad12104 add db refs 2019-03-27 23:00:59 -06:00
Mark Thom
1ce8d90627 add halt/0 2019-03-17 14:38:55 -06:00
Mark Thom
527ac606e9 bb_put/2 and bb_get/2 2019-03-12 22:38:47 -06:00
Mark Thom
089428b8c4 split dynamic database keys across modules 2019-03-08 21:22:15 -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
b69bf71ff4 support module modification using dynamic database predicates 2019-03-06 21:53:08 -07:00
Mark Thom
6439d09733 give dynamic predicates a better respect for module bounds 2019-03-06 00:09:55 -07:00
Mark Thom
e51e816178 current_predicate skips undefined predicates 2019-03-04 22:44:43 -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
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