notoria
fb5ee5e190
get_single_char reads Tab as \t
2020-04-18 14:16:46 -06:00
notoria
63e8378310
get_single_char reads Enter as \n
2020-04-18 14:16:46 -06:00
notoria
c24ebaf506
Moved get_single_char from builtins.pl to charsio.pl
2020-04-18 14:16:46 -06:00
notoria
d3a1f11dfe
Added predicate for reading a single character
2020-04-18 14:16:46 -06:00
Mark Thom
f96e694ff8
bracket graphic token chars in toplevel.pl ( #357 )
2020-04-18 14:16:40 -06:00
Mark Thom
d5d635e50f
slight tweaks to bimetatrans
2020-04-18 14:16:40 -06:00
Mark Thom
1ad4ce9822
index Constant::Usize ( #355 )
2020-04-18 14:16:40 -06:00
Mark Thom
3f971174e4
quote single dots only
2020-04-18 14:16:40 -06:00
Markus Triska
16e257ea32
ADDED: list_to_set/2, using the first occurrence of each element
...
Example:
?- list_to_set([B,a,b,a,B,A,b,A], Ls).
Ls = [B,a,b,A]
; false.
2020-04-18 14:16:40 -06:00
Mark Thom
37f1f8ac14
allow characters as atoms in Machine::use_module and Machine::use_qualified_module
2020-04-18 14:16:40 -06:00
Mark Thom
474fa9b3ec
remove underscores in printed variables produced by write_term_to_chars ( #340 )
2020-04-18 14:16:40 -06:00
Mark Thom
6d7b14ceb5
don't count the terminator in PStrIter len
2020-04-18 14:16:40 -06:00
Mark Thom
af14832b6c
quote dot when quoted(true) ( #349 )
2020-04-18 14:16:40 -06:00
Mark Thom
38bb44664c
interrupt running queries and return to toplevel ( #323 )
2020-04-18 14:16:40 -06:00
Mark Thom
124d924ff5
write [a,b,c] correctly with write_canonical ( #349 )
2020-04-18 14:16:40 -06:00
Mark Thom
c9074d8d96
properly iterate through UTF-8 strings ( #350 )
2020-04-14 23:14:47 -06:00
Mark Thom
f6c995157e
clean up print_list_like
2020-04-14 14:26:30 -06:00
Mark Thom
a059a9fbdc
print lists as strings when possible ( #295 )
2020-04-14 13:28:51 -06:00
Mark Thom
7799ed36f0
provide better variable names in write_term_to_chars/3 ( #340 )
2020-04-14 10:39:10 -06:00
Mark Thom
db5ed345bc
improve writeX performance ( #290 )
2020-04-14 10:25:05 -06:00
Mark Thom
082c6a9e64
copy operator exports to impromptu modules ( #307 )
2020-04-14 01:03:49 -06:00
Mark Thom
b74a4d5225
Merge branch 'master' of https://github.com/mthom/rusty-wam
2020-04-14 00:40:57 -06:00
Mark Thom
16a572c250
change from xsi to iso in bimetatrans, correct atomic/1 failure ( #343 )
2020-04-14 00:40:51 -06:00
Markus Triska
237c855f10
ADDED: group_pairs_by_key/2
...
Pairs must be keysorted and may also contain variables as keys.
Examples:
?- group_pairs_by_key([1-a,1-b,2-c], Ps).
Ps = [1-[a,b],2-[c]].
?- group_pairs_by_key([X-a,X-b,2-c], Ps).
Ps = [X-[a,b],2-[c]].
2020-04-14 00:10:33 +02:00
Mark Thom
378e9b5539
Merge pull request #327 from srenatus/sr/pass-argv-as-partial-strings
...
use partial strings for passing argv to toplevel.pl
2020-04-13 11:17:08 -03:00
Markus Triska
ab9b604d02
the workaround is no longer necessary, since #336 is now corrected
2020-04-13 11:32:06 +02:00
Stephan Renatus
155645307a
use partial strings for passing argv to toplevel.pl
...
In run_top_level: rename variables, make them partial strings
The rename is mostly cosmetic: all of argv is passed, and if argv
contains flags, goals, etc, it's more than filenames.
Using partial strings instead of atom came from discussions about how to
pass goals in the CLI, and can thus be considered preliminary work for
that.
In toplevel.pl: convert partial string to atom before passing it to
`use_module`.
Signed-off-by: Stephan Renatus <srenatus@chef.io >
2020-04-13 10:10:10 +02:00
Mark Thom
02eb24cd57
correct partial string copying by resetting threshold to redirected partial string stubs to 0
2020-04-12 23:33:07 -06:00
Mark Thom
787fbe1bb6
use partial_string/1 in place of the removed string/1 in bimetatrans_ruleml.pl
2020-04-12 22:27:53 -06:00
Markus Triska
f52c9772a7
also include a newline in portray_clause/1
2020-04-13 01:24:15 +02:00
Markus Triska
208927544d
ADDED: provide a rudimentary version of portray_clause/1
...
At the moment, library(format) seems to be a fitting place.
In the eventual library organization, portray_clause/1 and
related predicates may be moved to their own dedicated library.
2020-04-13 01:04:52 +02:00
Mark Thom
0fad2f9953
make write_term_to_chars work with variable terms ( #335 )
2020-04-12 18:10:45 -06:00
Mark Thom
d3a9392421
provide read_term_from_chars/2 ( #334 )
2020-04-12 17:26:11 -06:00
Mark Thom
7621155a89
change wording of QueryCannotBePostedAsFact to QueryCannotBeDefinedAsFact, remove old commented code in read.rs
2020-04-12 16:01:53 -06:00
Markus Triska
c9f1a95343
ENHANCED: ~w now supports compound terms, and ~q is now also available
2020-04-12 19:56:01 +02:00
Mark Thom
f2cf0ec459
move write_term_to_chars/3 to src/prolog/lib/charsio.pl
2020-04-12 14:42:39 -06:00
Mark Thom
0380d70a46
add write_term_to_chars/3 to iso_ext.pl ( #288 )
2020-04-12 14:29:28 -06:00
Mark Thom
28099b9812
correct misleading error for modules ( #300 )
2020-04-12 12:51:59 -06:00
Mark Thom
2ce4f602c0
be more judicious with at_cdr in print_string ( #295 )
2020-04-12 12:18:15 -06:00
Mark Thom
5e81fb4754
throw exception when attempting to post query as goal ( #329 )
2020-04-12 12:07:41 -06:00
Mark Thom
97d8d07947
recognize empty lists as partial strings ( #328 )
2020-04-11 23:08:15 -06:00
Mark Thom
4f0adad78e
remove string/1, use a more general test for the partial_string/1 type test ( #328 )
2020-04-11 22:47:52 -06:00
Mark Thom
0499005db5
throw error when trying to use partial lists as DCG terminal-sequence ( #286 )
2020-04-11 22:40:29 -06:00
Mark Thom
aedffb3cfe
remove unnecessary use of partial_string in bimetatrans example
2020-04-11 22:02:17 -06:00
Mark Thom
fff96e69db
Merge pull request #310 from triska/bimeta_example
...
Bimeta example
2020-04-11 22:03:10 -03:00
Mark Thom
abc99c9dd8
Merge branch 'master' of https://github.com/mthom/rusty-wam
2020-04-11 21:59:25 -06:00
Mark Thom
6e4b76a3b4
compile special instructions for partial strings when recognized
2020-04-11 21:53:28 -06:00
Mark Thom
92d8642133
do not accept [X|Xs] patterns as DCG non-terminals ( #286 )
2020-04-11 21:52:45 -06:00
Markus Triska
4d32b6976a
add library(freeze) to make zcompare/3 work
2020-04-08 22:09:59 +02:00
Markus Triska
e442fddc66
tuples_in/2 now works
2020-04-08 17:49:06 +02:00