]>
Repositorios git - scryer-prolog.git/log
Mark Thom [Mon, 24 Aug 2020 19:07:40 +0000 (16:07 -0300)]
Merge pull request #686 from triska/call_nth
ADDED: Preliminary version of call_nth/2.
Markus Triska [Sun, 23 Aug 2020 20:13:11 +0000 (22:13 +0200)]
ADDED: First version of call_nth/2.
A thread-safe implementation is possible for example with
'$nb_setarg'/3 (see #390).
Mark Thom [Mon, 24 Aug 2020 01:49:10 +0000 (22:49 -0300)]
flatten passage of cut point B in (,)/2, (->)/2 and (;)/2 (#685, #683)
Mark Thom [Sat, 22 Aug 2020 23:17:32 +0000 (20:17 -0300)]
Merge pull request #682 from triska/dif_improvements
Improvements to dif/2
Markus Triska [Sat, 22 Aug 2020 15:49:02 +0000 (17:49 +0200)]
dif/2: Omit entailed residual goals, if the arguments are not unifiable.
This addresses #135.
Markus Triska [Sat, 22 Aug 2020 15:47:42 +0000 (17:47 +0200)]
dif/2: Succeed unconditionally if the arguments are not unifiable.
This addresses one part of #135.
Mark Thom [Sat, 15 Aug 2020 16:55:48 +0000 (13:55 -0300)]
Merge pull request #677 from notoria/clpz_mod
Made mod stronger and addressed #675
notoria [Sat, 15 Aug 2020 15:56:07 +0000 (17:56 +0200)]
Use nonterminal fd_put//3 in mod from clpz
notoria [Sat, 15 Aug 2020 15:39:34 +0000 (17:39 +0200)]
Simplified the code
notoria [Sat, 15 Aug 2020 15:06:12 +0000 (17:06 +0200)]
Using queue_goal//1 to correctly bind variables
notoria [Sat, 15 Aug 2020 11:37:33 +0000 (13:37 +0200)]
Fixed variable bindings in mod from clpz
notoria [Sat, 15 Aug 2020 10:45:33 +0000 (12:45 +0200)]
Made mod stronger and addressed #675
Mark Thom [Fri, 14 Aug 2020 03:21:19 +0000 (00:21 -0300)]
Merge pull request #674 from notoria/clpz_mod
Improved mod in clpz
notoria [Thu, 13 Aug 2020 08:38:57 +0000 (10:38 +0200)]
More improvement on mod from CLP(Z)
notoria [Mon, 10 Aug 2020 19:00:54 +0000 (21:00 +0200)]
Improved mod in CLP(Z)
This is still a work in progress.
Mark Thom [Wed, 12 Aug 2020 19:59:51 +0000 (16:59 -0300)]
Merge pull request #671 from triska/clpb_restriction
FIXED: CLP(B): Delay BDD restriction until after the instantiation.
Markus Triska [Wed, 12 Aug 2020 17:51:25 +0000 (19:51 +0200)]
FIXED: CLP(B): Delay BDD restriction until after the instantiation.
This is necessary to actually take the new value into account.
Example:
?- sat(A*B>=C*D), A=1,B=0,C=1,D=1.
false.
This addresses #670.
Mark Thom [Tue, 11 Aug 2020 22:53:02 +0000 (19:53 -0300)]
Merge pull request #668 from triska/xbrl
library(sgml): Correctly parse XML leaf nodes that are not text nodes.
Markus Triska [Tue, 11 Aug 2020 19:00:56 +0000 (21:00 +0200)]
library(sgml): Correctly parse XML leaf nodes that are not text nodes.
Example:
?- load_xml("<schemaRef type=\"simple\"/>", Node, []).
Node = [element(schemaRef,[type="simple"],[])].
This is necessary for example to parse XBRL files. See #665.
Mark Thom [Tue, 11 Aug 2020 18:54:34 +0000 (15:54 -0300)]
Merge pull request #667 from triska/clpb_taut
omit internal attributes in residual goals when using taut/2
Markus Triska [Tue, 11 Aug 2020 18:48:37 +0000 (20:48 +0200)]
omit internal attributes in residual goals when using taut/2
Examples:
?- taut(X=:=X,1).
clpb:sat(X=:=X)
; false.
?- taut(X=\=X,0).
clpb:sat(X=:=X)
; false.
Mark Thom [Sat, 8 Aug 2020 22:29:35 +0000 (16:29 -0600)]
update prolog_parser version (#657)
Mark Thom [Sat, 8 Aug 2020 19:12:09 +0000 (13:12 -0600)]
Merge branch 'master' of https://github.com/mthom/scryer-prolog
Mark Thom [Sat, 8 Aug 2020 19:11:09 +0000 (13:11 -0600)]
fix bugs in PausedPrologStream (#661)
Mark Thom [Sat, 8 Aug 2020 15:24:29 +0000 (12:24 -0300)]
Merge pull request #656 from notoria/try_from_number
Fixed some conversion issues
Mark Thom [Sat, 8 Aug 2020 15:23:40 +0000 (12:23 -0300)]
Merge pull request #660 from triska/shorter_crypto
Shorten and improve implementation of several cryptographic routines
Markus Triska [Thu, 6 Aug 2020 21:27:49 +0000 (23:27 +0200)]
ensure proper lengths of key and initialization vector
This avoids crashes when using unsuitable lengths.
Markus Triska [Thu, 6 Aug 2020 21:17:08 +0000 (23:17 +0200)]
remove entailed constraint
Markus Triska [Thu, 6 Aug 2020 18:12:57 +0000 (20:12 +0200)]
use self.deref(...) (see #653)
Markus Triska [Thu, 6 Aug 2020 18:12:23 +0000 (20:12 +0200)]
use atom_argument_to_string
notoria [Thu, 6 Aug 2020 09:39:55 +0000 (11:39 +0200)]
Fixed some conversion issues
Mark Thom [Thu, 6 Aug 2020 06:17:55 +0000 (00:17 -0600)]
fix crash in CryptoPasswordHash (#653), conversion of Rational integers in number_chars/2 (#655)
Mark Thom [Thu, 6 Aug 2020 05:40:51 +0000 (02:40 -0300)]
Merge pull request #654 from triska/aad
ADDED: library(crypto): Support for additional authenticated data (AAD).
Markus Triska [Wed, 5 Aug 2020 18:31:56 +0000 (20:31 +0200)]
shorten, and increase readability
Markus Triska [Wed, 5 Aug 2020 18:10:58 +0000 (20:10 +0200)]
use "octet" as a string literal, reducing the number of arguments
Markus Triska [Wed, 5 Aug 2020 18:09:07 +0000 (20:09 +0200)]
ADDED: library(crypto): Support for additional authenticated data (AAD).
Additional authenticated data can now be specified with the new
aad(Chars) option for encryption and decryption. It is authenticated,
but not encrypted.
Mark Thom [Wed, 5 Aug 2020 05:35:10 +0000 (23:35 -0600)]
update prolog_parser to 0.8.67 (#648)
Mark Thom [Tue, 4 Aug 2020 01:29:53 +0000 (19:29 -0600)]
unify '[]' with proper [] in atom_chars/2 (#569)
Mark Thom [Mon, 3 Aug 2020 05:35:53 +0000 (23:35 -0600)]
reconcile '[]' and [] (#644), solve remaining conformity issues (#648), move (-->) from dcgs.pl to builtins.pl (#649)
Mark Thom [Fri, 31 Jul 2020 21:19:12 +0000 (18:19 -0300)]
Merge pull request #647 from notoria/newline
Improved readline
notoria [Fri, 31 Jul 2020 16:12:38 +0000 (18:12 +0200)]
Improved readline
Mark Thom [Thu, 30 Jul 2020 13:29:20 +0000 (10:29 -0300)]
Merge pull request #645 from triska/curve25519
ADDED: library(crypto): ECDH key exchange over Curve25519 (X25519)
Markus Triska [Wed, 29 Jul 2020 21:14:16 +0000 (23:14 +0200)]
ADDED: library(crypto): ECDH key exchange over Curve25519 (X25519)
Mark Thom [Mon, 27 Jul 2020 22:43:43 +0000 (16:43 -0600)]
the indexer now categorizes partial strings only as lists (#623, #642)
Mark Thom [Sat, 25 Jul 2020 16:20:45 +0000 (13:20 -0300)]
Merge pull request #639 from triska/flush_output
ENHANCED: flush output for impure I/O (format/[2,3], portray_clause/1 etc.)
Markus Triska [Sat, 25 Jul 2020 07:47:59 +0000 (09:47 +0200)]
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:
Mark Thom [Thu, 23 Jul 2020 22:49:12 +0000 (19:49 -0300)]
Merge pull request #638 from triska/base64
ADDED: chars_base64/3 for efficient bidirectional Base64 conversion.
Markus Triska [Wed, 22 Jul 2020 22:35:23 +0000 (00:35 +0200)]
throw an error if a character cannot be encoded
Markus Triska [Wed, 22 Jul 2020 22:27:31 +0000 (00:27 +0200)]
better error handling for options
Markus Triska [Wed, 22 Jul 2020 18:19:56 +0000 (20:19 +0200)]
use newly available chars_base64/3
Markus Triska [Wed, 22 Jul 2020 18:17:46 +0000 (20:17 +0200)]
ADDED: chars_base64/3 for efficient bidirectional Base64 conversion.
Mark Thom [Sun, 19 Jul 2020 16:16:27 +0000 (13:16 -0300)]
Merge pull request #636 from triska/path_segments
ADDED: path_segments/2 for portable reasoning about path components.
Markus Triska [Sun, 19 Jul 2020 09:07:03 +0000 (11:07 +0200)]
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.
Mark Thom [Sat, 18 Jul 2020 15:40:53 +0000 (12:40 -0300)]
Merge pull request #633 from triska/file_time
ADDED: file_creation_time/2 and file_access_time/2.
Mark Thom [Sat, 18 Jul 2020 15:40:28 +0000 (12:40 -0300)]
Merge pull request #631 from cduret/lib_csv
add write_csv & change skip_header to with_header option
Mark Thom [Sat, 18 Jul 2020 15:40:09 +0000 (12:40 -0300)]
Merge pull request #635 from triska/more_links
DOC: add more links to libraries, and include iso_ext in the enumeration
Markus Triska [Sat, 18 Jul 2020 06:09:52 +0000 (08:09 +0200)]
DOC: add more links to libraries, and include iso_ext in the enumeration
Mark Thom [Fri, 17 Jul 2020 17:02:58 +0000 (11:02 -0600)]
look up operator precedence when arity does not match what the atom records, don't print brackets around outermost '+' (#629)
Markus Triska [Fri, 17 Jul 2020 16:48:39 +0000 (18:48 +0200)]
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
Mark Thom [Fri, 17 Jul 2020 00:03:13 +0000 (21:03 -0300)]
Merge pull request #632 from triska/path_canonical
ADDED: path_canonical/2, obtaining the canonical absolute path.
Cyrille Duret [Thu, 16 Jul 2020 23:21:40 +0000 (01:21 +0200)]
set domain_error exception & use format/3 with setup_call_cleanup/3 for stream writing
Markus Triska [Thu, 16 Jul 2020 21:33:52 +0000 (23:33 +0200)]
ENHANCED: Reorder fields in time stamps so that (@<)/2 is meaningful.
Markus Triska [Thu, 16 Jul 2020 20:56:10 +0000 (22:56 +0200)]
ADDED: file_modification_time/2, obtaining a time stamp.
This addresses a remaining aspect of #511.
Markus Triska [Wed, 15 Jul 2020 18:24:26 +0000 (20:24 +0200)]
ADDED: path_canonical/2, obtaining the canonical absolute path.
This addresses a remaining aspect of #511.
Cyrille Duret [Wed, 15 Jul 2020 16:26:57 +0000 (18:26 +0200)]
set throw() to follow ISO recommendations
794404 [Wed, 15 Jul 2020 11:02:30 +0000 (13:02 +0200)]
add write_csv & change skip_header to with_header option
Mark Thom [Tue, 14 Jul 2020 23:26:51 +0000 (20:26 -0300)]
Merge pull request #630 from triska/delete_file
ADDED: delete_file/1, addressing a remaining aspect of #511
Markus Triska [Tue, 14 Jul 2020 20:37:05 +0000 (22:37 +0200)]
ADDED: working_directory/2, addressing a remaining aspect of #511
Markus Triska [Tue, 14 Jul 2020 20:16:15 +0000 (22:16 +0200)]
ADDED: delete_file/1, addressing a remaining aspect of #511
Mark Thom [Sun, 12 Jul 2020 15:17:58 +0000 (12:17 -0300)]
Merge pull request #626 from triska/compact_crypto
ENHANCED: library(crypto): Retain the compact representation of strings.
Markus Triska [Sun, 12 Jul 2020 09:58:39 +0000 (11:58 +0200)]
mention symmetric encryption and ChaCha20-Poly1305
Markus Triska [Sun, 12 Jul 2020 08:07:56 +0000 (10:07 +0200)]
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.
Mark Thom [Sun, 12 Jul 2020 02:50:01 +0000 (23:50 -0300)]
Merge pull request #625 from triska/os
ADDED: library(os), reasoning about environment variables.
Markus Triska [Sat, 11 Jul 2020 17:52:01 +0000 (19:52 +0200)]
use newly available character type in must_be/2
Markus Triska [Sat, 11 Jul 2020 16:41:18 +0000 (18:41 +0200)]
ADDED: library(os), reasoning about environment variables.
Together with library(files), this addresses #511.
Mark Thom [Fri, 10 Jul 2020 21:22:15 +0000 (15:22 -0600)]
slight update to the BiMetaTrans README
Mark Thom [Fri, 10 Jul 2020 16:26:48 +0000 (10:26 -0600)]
update bimetatrans tests
Mark Thom [Fri, 10 Jul 2020 02:53:13 +0000 (20:53 -0600)]
add bimetatrans README
Mark Thom [Fri, 3 Jul 2020 17:40:52 +0000 (14:40 -0300)]
Merge pull request #621 from notoria/tabling
Tabling
notoria [Wed, 1 Jul 2020 11:14:12 +0000 (13:14 +0200)]
Enhanced the implementation
The restriction has been removed by using read_library_path from
cfd15f4e027b4df216e723bbd35facac28a09a1c .
notoria [Wed, 1 Jul 2020 08:22:17 +0000 (10:22 +0200)]
Allowing paths in use_module(library(..)) (#604)
In a module, the path is restricted in being an atom.
notoria [Wed, 1 Jul 2020 08:07:26 +0000 (10:07 +0200)]
Revert "allow paths in use_module(library(..)) (#604)"
This reverts commit
cfd15f4e027b4df216e723bbd35facac28a09a1c .
notoria [Wed, 1 Jul 2020 08:06:20 +0000 (10:06 +0200)]
Revert "build.rs recursively delves into directories during library bake stage, correct misnamed file at machine/mod.rs:455 (#617)"
This reverts commit
c1b577f2c7a148b13c1692ab8ac741aa57b0ac43 .
Mark Thom [Tue, 30 Jun 2020 16:34:39 +0000 (13:34 -0300)]
Merge pull request #606 from triska/files
ADDED: library(files), for reasoning about files and directories.
Mark Thom [Mon, 29 Jun 2020 06:58:10 +0000 (00:58 -0600)]
build.rs recursively delves into directories during library bake stage, correct misnamed file at machine/mod.rs:455 (#617)
Mark Thom [Sat, 27 Jun 2020 19:28:10 +0000 (16:28 -0300)]
Merge pull request #613 from cduret/csv_lib
add csv library
Cyrille Duret [Thu, 25 Jun 2020 19:13:29 +0000 (21:13 +0200)]
add csv library
Markus Triska [Sat, 20 Jun 2020 08:12:14 +0000 (10:12 +0200)]
directory_files/2: throw representation error if into_string() fails
Suggested by @notoria in #606. Many thanks!
Markus Triska [Wed, 24 Jun 2020 20:29:22 +0000 (22:29 +0200)]
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.
Markus Triska [Fri, 19 Jun 2020 16:20:31 +0000 (18:20 +0200)]
ADDED: library(files), for reasoning about files and directories.
Mark Thom [Mon, 22 Jun 2020 15:21:35 +0000 (12:21 -0300)]
Merge pull request #608 from triska/xml
ADDED: load_xml/3 to load XML files from streams, files and strings.
Markus Triska [Sun, 21 Jun 2020 07:44:57 +0000 (09:44 +0200)]
library(format) is not used in this example
Markus Triska [Sun, 21 Jun 2020 06:35:08 +0000 (08:35 +0200)]
ADDED: load_xml/3 to load XML files from streams, files and strings.
Mark Thom [Sat, 20 Jun 2020 17:46:52 +0000 (14:46 -0300)]
Merge pull request #607 from triska/xpath
ADDED: library(xpath) for convenient analysis of HTML and XML documents.
Markus Triska [Sat, 20 Jun 2020 17:07:43 +0000 (19:07 +0200)]
import member/2 from library(lists)
This is needed when processing redirects.
Markus Triska [Sat, 20 Jun 2020 10:25:13 +0000 (12:25 +0200)]
ADDED: library(xpath) for convenient analysis of HTML and XML documents.
Mark Thom [Fri, 19 Jun 2020 15:59:06 +0000 (12:59 -0300)]
Merge pull request #596 from triska/sgml
ADDED: library(sgml), providing load_html/3 to parse HTML documents
Mark Thom [Fri, 19 Jun 2020 15:58:26 +0000 (12:58 -0300)]
Merge pull request #605 from notoria/debug
Added library(debug)
notoria [Fri, 19 Jun 2020 15:48:55 +0000 (17:48 +0200)]
Added an entry in README
notoria [Fri, 19 Jun 2020 15:18:59 +0000 (17:18 +0200)]
Added library(debug)