Mark Thom
|
01d6ef099f
|
add StringList internal datatype
|
2018-08-20 22:00:38 -06:00 |
|
Mark Thom
|
d19ece6df8
|
add some prolog flags, tabled strings
|
2018-08-18 18:03:28 -06:00 |
|
Mark Thom
|
f9e6b7fec5
|
get rid of dynamic lookup for
$call_with_default_policy.
|
2018-08-12 23:17:34 -06:00 |
|
Mark Thom
|
c1ad5cd33f
|
get rid of dynamic lookup for
$call_with_default_policy.
|
2018-08-12 23:14:28 -06:00 |
|
Mark Thom
|
00d4ef7ad8
|
print equations lexographically by variable name, re: #26
|
2018-08-09 18:23:47 -06:00 |
|
Mark Thom
|
0cc4aa77ed
|
complete call_with_inference_limit/3
|
2018-08-09 00:31:41 -06:00 |
|
Mark Thom
|
3fef717677
|
set CWILCallPolicy count field back to private
|
2018-08-08 00:47:48 -06:00 |
|
Mark Thom
|
7016d378d6
|
add call_with_inference_limit/3
|
2018-08-08 00:42:57 -06:00 |
|
Mark Thom
|
707e5fcf8b
|
restore setup_call_cleanup/3
|
2018-08-04 16:12:37 -06:00 |
|
Mark Thom
|
ae11e82040
|
fail on parse error invoked by read/1
|
2018-08-04 14:56:38 -06:00 |
|
Mark Thom
|
cf82accc4b
|
add proceed to inlined instructions in tail position
|
2018-07-31 15:14:28 -06:00 |
|
Mark Thom
|
1ce527d179
|
realize full cheney in copier.rs
|
2018-07-29 18:38:26 -06:00 |
|
Mark Thom
|
1b025d409f
|
preliminary read support
|
2018-07-25 17:15:36 -06:00 |
|
Mark Thom
|
38dcd6113e
|
preliminary read support
|
2018-07-25 17:12:07 -06:00 |
|
Mark Thom
|
82ff377585
|
add numbered vars to writeq
|
2018-07-16 20:12:50 -06:00 |
|
Mark Thom
|
c5e1a08214
|
move print_constant logic to heap_print.rs
|
2018-07-16 19:06:27 -06:00 |
|
Mark Thom
|
f5e254dd64
|
add support for quoted atoms to writeq
|
2018-07-15 17:54:37 -06:00 |
|
Mark Thom
|
7527bc76f8
|
update README
|
2018-07-12 00:14:14 -06:00 |
|
Mark Thom
|
89044266d6
|
add tests for module resolution operator, README documentation.
|
2018-07-08 19:49:15 -06:00 |
|
Mark Thom
|
cd03b7795f
|
finalize the module resolution operator.
|
2018-07-08 15:21:09 -06:00 |
|
Mark Thom
|
073a8888f3
|
include builtins implicitly in every module.
|
2018-07-04 23:25:55 -06:00 |
|
Mark Thom
|
0abd075b0b
|
complete trimdown of listing compilation.
|
2018-07-01 18:14:45 -06:00 |
|
Mark Thom
|
fc11fda947
|
prepare module code
|
2018-06-25 00:21:33 -06:00 |
|
Mark Thom
|
d8ed3e11df
|
get rid of LocalMachineCodeIndex
|
2018-06-24 23:33:04 -06:00 |
|
Mark Thom
|
870316b0d1
|
get rid of LocalMachineCodeIndex
|
2018-06-24 23:32:50 -06:00 |
|
Mark Thom
|
2d7032e61a
|
prepare for changes to relocation scheme
|
2018-06-18 21:28:22 -06:00 |
|
Mark Thom
|
a824a53fa8
|
prepare for updating the code_dir with each new predicate
|
2018-06-16 23:36:22 -06:00 |
|
Mark Thom
|
7b99dc53b6
|
reorder print_constant comments for unsupported escape characters
|
2018-05-28 20:30:13 -06:00 |
|
Mark Thom
|
a13b94622b
|
print chars somewhat appropriately.
|
2018-05-28 20:19:52 -06:00 |
|
Mark Thom
|
07ec2d34c8
|
hacky workaround
|
2018-05-28 20:07:34 -06:00 |
|
Mark Thom
|
b49c0f5d36
|
get rid of spurious warning, add type error for skip_max_list
|
2018-05-21 16:20:08 -06:00 |
|
Mark Thom
|
4608c4fe58
|
fix offsetting of heap in existence errors
|
2018-05-20 16:26:52 -06:00 |
|
Mark Thom
|
a60af300fd
|
add instantiation error to skip_max_list
|
2018-05-20 12:51:21 -06:00 |
|
Mark Thom
|
c5386c3e88
|
correct for use in earlier releases of rust.
|
2018-05-17 13:14:38 -06:00 |
|
Mark Thom
|
ddb79e6b34
|
print certain atoms in single quotes.
|
2018-05-16 20:34:53 -06:00 |
|
Mark Thom
|
3f3fcc34c4
|
use lexer macros.
|
2018-05-16 20:17:00 -06:00 |
|
Mark Thom
|
df265e60a9
|
remove no longer present items from predicate list
|
2018-05-15 22:51:34 -06:00 |
|
Mark Thom
|
9fbb73dcb8
|
Merge branch 'develop'
|
2018-05-15 22:48:37 -06:00 |
|
Mark Thom
|
06d896277c
|
major refactor
|
2018-05-15 22:47:36 -06:00 |
|
Mark Thom
|
8f1d721477
|
move SGC and call inference instructions over to SystemClauseType
|
2018-05-15 00:23:42 -06:00 |
|
Mark Thom
|
9a88d179d1
|
remove IsClause
|
2018-05-14 16:43:49 -06:00 |
|
Mark Thom
|
18e2e77600
|
add (=..)/2, arg/3
|
2018-05-13 17:02:33 -06:00 |
|
Mark Thom
|
81d0538a5c
|
switch to machine implemented arg
|
2018-05-13 14:55:44 -06:00 |
|
Mark Thom
|
175a5db5d7
|
parse the list functor
|
2018-05-13 14:10:48 -06:00 |
|
Mark Thom
|
b0bdf50a78
|
parse negative numbers properly, handle length errors and failures properly.
|
2018-05-12 18:23:57 -06:00 |
|
Mark Thom
|
5690409534
|
correct faulty bind (two tests now fail: conjunctive_queries and lists)
|
2018-05-12 15:51:20 -06:00 |
|
Mark Thom
|
0951bcff58
|
add arg
|
2018-05-12 01:21:31 -06:00 |
|
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
|
910bafef61
|
port remaining builtins to SystemClauseType
|
2018-05-10 22:40:01 -06:00 |
|
Mark Thom
|
5a631c17c7
|
make system calls exempt from call policy.
|
2018-05-10 22:24:15 -06:00 |
|
Mark Thom
|
0f980e204d
|
add more tests that pass.
|
2018-05-10 19:47:53 -06:00 |
|
Mark Thom
|
954c29b103
|
add catch/throw support, make exceptions and arithmetic tests pass.
|
2018-05-10 01:43:36 -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
|
24d6fb16a8
|
add system call preliminaries
|
2018-05-07 22:29:02 -06:00 |
|
Mark Thom
|
1a0f50200f
|
system calls preliminary
|
2018-05-07 22:27:58 -06:00 |
|
Mark Thom
|
a1bfcf4c9d
|
add system call preliminaries
|
2018-05-07 22:24:59 -06:00 |
|
Mark Thom
|
7573a8fb10
|
record cyclic terms in printer
|
2018-05-07 00:44:42 -06:00 |
|
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
|
afc5736418
|
set up heap_var Cow in heap_print.rs
|
2018-05-04 20:15:39 -06:00 |
|
Mark Thom
|
2df82e6b01
|
abbreviate names in heap_iter.rs
|
2018-05-04 19:43:43 -06:00 |
|
Mark Thom
|
8974035fed
|
correct the copier's mishandling of cyclic lists
|
2018-05-04 15:44:11 -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
|
df1421dae8
|
remove unnecessary store/deref in keysort error checking
|
2018-05-02 21:54:09 -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
|
13280abbb2
|
Merge branch 'master' of http://github.com/mthom/rusty-wam into develop
|
2018-04-25 18:59:59 -06:00 |
|
Mark Thom
|
58515d071c
|
skip_max_list preliminaries
|
2018-04-25 18:59:52 -06:00 |
|
Mark Thom
|
ed9689368d
|
properly support module imports from within modules.
|
2018-04-25 17:11:46 -06:00 |
|
Mark Thom
|
1415a5c98c
|
add other declarations properly
|
2018-04-25 12:02:38 -06:00 |
|
Mark Thom
|
a891b9327c
|
protect imported predicates from being overwritten (re: issue #28)
|
2018-04-23 15:55:53 -06:00 |
|
Mark Thom
|
b87d599b14
|
change modules when updating code index (re: issue #27)
|
2018-04-20 14:03:04 -06:00 |
|
Mark Thom
|
09bd087ba5
|
metacall always hashes in user (re: issue #27)
|
2018-04-18 19:32:58 -06:00 |
|
Mark Thom
|
989d44d702
|
make module code entries immutable (re: issue #27)
|
2018-04-18 19:24:32 -06:00 |
|
Mark Thom
|
a4789a73ef
|
correct-ish definition of reverse.
|
2018-04-18 15:34:09 -06:00 |
|
Mark Thom
|
167d8a7590
|
correct-ish definition of reverse.
|
2018-04-18 15:31:36 -06:00 |
|
Mark Thom
|
56318b09d0
|
add predicate existence errors for failed metacalls.
|
2018-04-17 09:26:13 -06:00 |
|
Mark Thom
|
35694e7622
|
print characters correctly
|
2018-04-16 23:25:37 -06:00 |
|
Mark Thom
|
c02c88b6f0
|
add functional notation for operators.
|
2018-04-16 22:00:30 -06:00 |
|
Mark Thom
|
54b17a6782
|
update to lexer error handling.
|
2018-04-14 15:38:06 -06:00 |
|
Mark Thom
|
fcb468b844
|
fix lexer bugs.
|
2018-04-14 11:59:57 -06:00 |
|
Mark Thom
|
ff6e58e987
|
update/extension to lexer, bug fixes to module importing
|
2018-04-13 18:44:23 -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
|
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 |
|