Mark Thom
fcffb90549
add atts.pl, various fixes
2019-01-30 21:31:48 -07:00
Mark Thom
91b85db90c
flatten bracketed commas in dcgs
2019-01-26 14:38:54 -07:00
Mark Thom
ef3d3aa01a
fix unsafe variable handling
2019-01-24 23:38:53 -07:00
Mark Thom
ca7e62928b
clone in situ compiled terms
2019-01-19 17:05:29 -07:00
Mark Thom
c9f6ab984f
add dynamic module resolution calls
2019-01-06 00:15:32 -07:00
Mark Thom
042779cff9
add read support for user:term_expansion and user:goal_expansion
2019-01-05 19:22:38 -07:00
Mark Thom
e90669d159
fix expand_goal and expand_term
2018-12-13 19:38:44 -07:00
Mark Thom
45a68d4bc2
add expand_goal, make user:term_expansion and user:goal_expansion work properly within modules
2018-12-11 22:57:11 -07:00
Mark Thom
226bb7f9ed
remove Option wrapper from cached_query
2018-12-10 21:21:15 -07:00
Mark Thom
c281c1b427
offset variable indexing for semi-context notations
2018-11-18 21:51:53 -07:00
Mark Thom
6e20f82d6f
fix faulty tidy_trail
2018-11-15 23:04:52 -07:00
Mark Thom
81f4128bc6
update dcgs to handle ; and ->
2018-10-27 20:56:23 -06:00
Mark Thom
32fecca45d
add write variants
2018-10-23 22:53:50 -06:00
Mark Thom
1e3891204e
make lists parse properly when used as dcg rules
2018-10-20 23:37:09 -06:00
Mark Thom
1b7ffa00af
fix semicontext notation
2018-10-15 22:31:53 -06:00
Mark Thom
a3dc6d2bef
add expand_term/2
2018-10-15 20:07:48 -06:00
Mark Thom
eabb851d8c
add expand_term/2
2018-10-15 20:07:22 -06:00
Mark Thom
24a7206021
fix DCG bugs
2018-10-10 21:30:40 -06:00
Mark Thom
b2d9673593
add spaces between operators when there is an ambiguity
2018-10-08 23:04:23 -06:00
Mark Thom
41b8f7a36b
add spaces between operators when there is an ambiguity
2018-10-08 23:04:03 -06:00
Mark Thom
9a6094bad2
correct phrase/2
2018-10-08 11:02:48 -06:00
Mark Thom
398d91576c
fix bug with mark_non_var
2018-10-08 00:34:08 -06:00
Mark Thom
59ad71fccc
add preliminary support for DCGs.
2018-10-07 00:07:12 -06:00
Mark Thom
d9b5734688
mark term_variables type errors with blame
2018-10-03 23:08:25 -06:00
Mark Thom
8e4bb039f0
divide atom tables by module
2018-10-03 22:56:12 -06:00
Markus Triska
43f7743467
ENHANCED: Better error handling if Type is invalid.
...
Strictly speaking, type is currently not a type, so a domain error is
appropriate if Type is not a valid type. However, there are also other
cases where new types have been introduced in the past, and this
seems a good candidate for a new type. Let us hence use a type error.
Example:
?- can_be(listi, [a,b|Ls]).
%@ ERROR: Type error: `type' expected, found `listi' (an atom)
2018-09-30 23:36:32 +02:00
Markus Triska
373546e83d
correct can_be/2 for partial lists
...
Example:
?- can_be(list, [a,b|Ls]).
%@ true.
2018-09-28 18:20:57 +02:00
Mark Thom
a97987c20b
add error.pl, correct numbervars/3
2018-09-27 22:40:23 -06:00
Mark Thom
6f668a8b7a
move term_variables to builtins
2018-09-26 19:33:27 -06:00
Mark Thom
4cf1aa0d8f
add term variables
2018-09-24 23:33:47 -06:00
Mark Thom
0c545467b9
correct numbervars
2018-09-22 17:45:52 -06:00
Mark Thom
4d57989c2b
term_expansion beginnings
2018-09-22 16:25:32 -06:00
Mark Thom
908972eff1
incorporate term_expansion phase in compilation
2018-09-18 22:44:03 -06:00
Mark Thom
f226cb3dbd
correct conformity errors
2018-09-16 14:11:21 -06:00
Mark Thom
32439a1da5
transition to MachineCodeIndices internally
2018-09-08 02:31:33 -06:00
Mark Thom
6d0ddc1183
be more efficient in (,)/3 clause, correct (;)/3
2018-09-06 09:32:22 -03:00
Mark Thom
57ddf64cba
cut properly in first (,)/3 clause
2018-09-06 09:16:44 -03:00
Mark Thom
96ff9c0126
correct comma implementation
2018-09-05 18:35:06 -06:00
Mark Thom
4be20e48e6
fixes to quoted
2018-09-03 17:21:28 -06:00
Mark Thom
78ea3f5441
add (^) as an evaluable factor, re: #39
2018-09-01 13:48:04 -06:00
Mark Thom
d19ece6df8
add some prolog flags, tabled strings
2018-08-18 18:03:28 -06:00
Mark Thom
0cc4aa77ed
complete call_with_inference_limit/3
2018-08-09 00:31:41 -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
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
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
06d896277c
major refactor
2018-05-15 22:47:36 -06:00
Mark Thom
18e2e77600
add (=..)/2, arg/3
2018-05-13 17:02:33 -06:00