notoria
ac00ae4daf
Improved readline
2020-07-31 21:16:33 +02:00
Markus Triska
32c612b747
ADDED: library(crypto): ECDH key exchange over Curve25519 (X25519)
2020-07-29 23:51:11 +02:00
Mark Thom
386f7cf65d
the indexer now categorizes partial strings only as lists ( #623 , #642 )
2020-07-27 16:43:43 -06:00
Markus Triska
dcc4b91b35
ENHANCED: flush output for impure I/O (format/[2,3], portray_clause/1 etc.)
...
Without this, we do not get a (timely) prompt in cases like:
?- format("press a key: ", []), get_single_char(C).
whereas for example write/1 already works in such cases:
?- write('press a key: '), get_single_char(C).
press a key:
2020-07-25 09:49:02 +02:00
Markus Triska
928c9c9aad
throw an error if a character cannot be encoded
2020-07-23 00:35:23 +02:00
Markus Triska
4a90f13dee
better error handling for options
2020-07-23 00:27:31 +02:00
Markus Triska
61dddcee3f
use newly available chars_base64/3
2020-07-22 20:35:48 +02:00
Markus Triska
4c510001ce
ADDED: chars_base64/3 for efficient bidirectional Base64 conversion.
2020-07-22 20:35:48 +02:00
Markus Triska
2768beec4c
ADDED: path_segments/2 for portable reasoning about path components.
...
The platform-specific directory separator is taken into account.
The clean representation of segments as a list simplifies reasoning.
2020-07-19 12:32:01 +02:00
Mark Thom
bd0aa16322
Merge pull request #633 from triska/file_time
...
ADDED: file_creation_time/2 and file_access_time/2.
2020-07-18 12:40:53 -03:00
Mark Thom
a1746a5bf1
Merge pull request #631 from cduret/lib_csv
...
add write_csv & change skip_header to with_header option
2020-07-18 12:40:28 -03:00
Mark Thom
f0c8056334
look up operator precedence when arity does not match what the atom records, don't print brackets around outermost '+' ( #629 )
2020-07-17 11:02:58 -06:00
Markus Triska
17dd9239b6
ADDED: file_creation_time/2 and file_access_time/2.
...
The code can be simplified once if- and while-let-chains are available:
https://github.com/rust-lang/rust/issues/53667
2020-07-17 18:48:39 +02:00
Cyrille Duret
920644afaf
set domain_error exception & use format/3 with setup_call_cleanup/3 for stream writing
2020-07-17 01:21:40 +02:00
Markus Triska
8668aee7fd
ENHANCED: Reorder fields in time stamps so that (@<)/2 is meaningful.
2020-07-16 23:40:03 +02:00
Markus Triska
4f386b3e5e
ADDED: file_modification_time/2, obtaining a time stamp.
...
This addresses a remaining aspect of #511 .
2020-07-16 23:40:03 +02:00
Markus Triska
0f4667d942
ADDED: path_canonical/2, obtaining the canonical absolute path.
...
This addresses a remaining aspect of #511 .
2020-07-15 20:43:34 +02:00
Cyrille Duret
5705c42820
set throw() to follow ISO recommendations
2020-07-15 18:26:57 +02:00
794404
f5f0d00a75
add write_csv & change skip_header to with_header option
2020-07-15 13:02:30 +02:00
Markus Triska
94e9e17c79
ADDED: working_directory/2, addressing a remaining aspect of #511
2020-07-14 23:05:29 +02:00
Markus Triska
5134e64cae
ADDED: delete_file/1, addressing a remaining aspect of #511
2020-07-14 22:21:46 +02:00
Markus Triska
88a2b82f7e
ENHANCED: library(crypto): Retain the compact representation of strings.
...
This avoids the costly (in terms of space requirements!) conversion of
compact lists of characters to lists of integers, making hashing, HKDF,
encryption, decryption, signing and signature verification an order of
magnitude more efficient (primarily in terms of space, also in time).
This makes library(crypto) suitable to process also very large files.
2020-07-12 11:54:37 +02:00
Markus Triska
0fa8feb475
use newly available character type in must_be/2
2020-07-11 21:00:25 +02:00
Markus Triska
eb872f8fca
ADDED: library(os), reasoning about environment variables.
...
Together with library(files), this addresses #511 .
2020-07-11 21:00:25 +02:00
Mark Thom
5fd78320dd
slight update to the BiMetaTrans README
2020-07-10 15:22:15 -06:00
Mark Thom
3195042c7d
update bimetatrans tests
2020-07-10 10:26:48 -06:00
Mark Thom
b0234fa8b7
add bimetatrans README
2020-07-09 20:53:13 -06:00
notoria
bf13700a95
Enhanced the implementation
...
The restriction has been removed by using read_library_path from
cfd15f4e02 .
2020-07-01 13:14:12 +02:00
notoria
83268f5ff6
Allowing paths in use_module(library(..)) ( #604 )
...
In a module, the path is restricted in being an atom.
2020-07-01 10:22:17 +02:00
notoria
1eb42654e0
Revert "allow paths in use_module(library(..)) ( #604 )"
...
This reverts commit cfd15f4e02 .
2020-07-01 10:07:26 +02:00
notoria
e05c34d1ee
Revert "build.rs recursively delves into directories during library bake stage, correct misnamed file at machine/mod.rs:455 ( #617 )"
...
This reverts commit c1b577f2c7 .
2020-07-01 10:06:20 +02:00
Mark Thom
8325bb11e2
Merge pull request #606 from triska/files
...
ADDED: library(files), for reasoning about files and directories.
2020-06-30 13:34:39 -03:00
Mark Thom
c1b577f2c7
build.rs recursively delves into directories during library bake stage, correct misnamed file at machine/mod.rs:455 ( #617 )
2020-06-29 00:58:10 -06:00
Cyrille Duret
e2c61485a1
add csv library
2020-06-25 21:13:29 +02:00
Markus Triska
65f200e02c
directory_files/2: throw representation error if into_string() fails
...
Suggested by @notoria in #606 . Many thanks!
2020-06-24 23:30:40 +02:00
Markus Triska
aa9432e24f
comment on indexing, addressing a comment by @pmoura in #606
...
If indexing is needed for lists of characters, it should be added to
the engine.
2020-06-24 22:29:34 +02:00
Markus Triska
30d1585468
ADDED: library(files), for reasoning about files and directories.
2020-06-24 22:29:34 +02:00
Markus Triska
bcd6d4e8a7
library(format) is not used in this example
2020-06-21 09:46:05 +02:00
Markus Triska
32eb896c56
ADDED: load_xml/3 to load XML files from streams, files and strings.
2020-06-21 09:45:37 +02:00
Markus Triska
b3c9fb2fea
import member/2 from library(lists)
...
This is needed when processing redirects.
2020-06-20 19:07:43 +02:00
Markus Triska
d66ea07ba4
ADDED: library(xpath) for convenient analysis of HTML and XML documents.
2020-06-20 18:08:11 +02:00
Mark Thom
496279c92d
Merge pull request #596 from triska/sgml
...
ADDED: library(sgml), providing load_html/3 to parse HTML documents
2020-06-19 12:59:06 -03:00
notoria
94eddd3b42
Added library(debug)
2020-06-19 17:18:59 +02:00
Markus Triska
79829cb6d2
ADDED: library(sgml), providing load_html/3 to parse HTML documents
2020-06-19 16:40:01 +02:00
Mark Thom
0d20ca0bf2
Merge pull request #592 from triska/http_open
...
ADDED: library(http/http_open), opening HTTP and HTTPS streams for reading
2020-06-19 11:30:23 -03:00
Mark Thom
3ede5ea28f
Merge branch 'master' of https://github.com/mthom/rusty-wam
2020-06-19 00:58:43 -06:00
Mark Thom
cfd15f4e02
allow paths in use_module(library(..)) ( #604 )
2020-06-19 00:57:56 -06:00
Mark Thom
1f9ff2dd88
clarify meaning of AssertItems and QueryItems in BiMetaTrans source-level documentation
2020-06-18 23:47:54 -06:00
Markus Triska
5eda2dfe0e
put_char/[1,2]: throw type errors for atoms that are not characters
...
Example:
?- put_char(hello).
%@ caught: error(type_error(character,hello),put_char/2)
2020-06-18 00:15:00 +02:00
Mark Thom
1509c6a471
Merge pull request #597 from triska/faster_format
...
ENHANCED: much faster format/3 for text streams
2020-06-17 18:48:49 -03:00