]>
Repositorios git - scryer-prolog.git/log
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)
Markus Triska [Sun, 14 Jun 2020 14:52:46 +0000 (16:52 +0200)]
ADDED: library(sgml), providing load_html/3 to parse HTML documents
Mark Thom [Fri, 19 Jun 2020 14:30:23 +0000 (11:30 -0300)]
Merge pull request #592 from triska/http_open
ADDED: library(http/http_open), opening HTTP and HTTPS streams for reading
Mark Thom [Fri, 19 Jun 2020 06:58:43 +0000 (00:58 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Fri, 19 Jun 2020 06:57:56 +0000 (00:57 -0600)]
allow paths in use_module(library(..)) (#604)
Mark Thom [Fri, 19 Jun 2020 05:47:54 +0000 (23:47 -0600)]
clarify meaning of AssertItems and QueryItems in BiMetaTrans source-level documentation
Mark Thom [Thu, 18 Jun 2020 15:16:47 +0000 (12:16 -0300)]
Merge pull request #602 from triska/put_char
put_char/[1,2]: throw type errors for atoms that are not characters
Markus Triska [Wed, 17 Jun 2020 22:09:33 +0000 (00:09 +0200)]
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)
Mark Thom [Wed, 17 Jun 2020 21:48:49 +0000 (18:48 -0300)]
Merge pull request #597 from triska/faster_format
ENHANCED: much faster format/3 for text streams
Markus Triska [Sat, 13 Jun 2020 07:32:08 +0000 (09:32 +0200)]
ADDED: library(http/http_open), opening HTTP and HTTPS streams for reading
Example:
?- http_open("https://github.com/mthom/scryer-prolog", Stream, []),
length(Ls, 10),
maplist(get_char(Stream), Ls).
Yielding:
%@ Stream = '$stream'(0x7fba4c59ef10), Ls = "\n\n\n\n\n<!DOC"
%@ ; false.
Mark Thom [Wed, 17 Jun 2020 01:03:07 +0000 (19:03 -0600)]
cover Addr::Fixnum when not referenced as an Addr::Con, undefine dynamic predicate definitions from within modules too (#588)
Mark Thom [Wed, 17 Jun 2020 00:47:53 +0000 (18:47 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Wed, 17 Jun 2020 00:47:39 +0000 (18:47 -0600)]
fix copy_partial_string bug (#572)
Markus Triska [Tue, 16 Jun 2020 19:13:03 +0000 (21:13 +0200)]
ENHANCED: much faster format/3 for text streams
This is now also used by format/2 to emit output on the terminal,
and significantly speeds up toplevel output of long strings.
Mark Thom [Tue, 16 Jun 2020 03:06:01 +0000 (00:06 -0300)]
Merge pull request #590 from triska/read_line_to_chars
ADDED: read_line_to_chars/3, reading up to and including "\n" from a stream
Mark Thom [Mon, 15 Jun 2020 22:38:27 +0000 (16:38 -0600)]
change the plurality of AssertItem(s), QueryItem(s) in bimetatrans.pl
Mark Thom [Sun, 14 Jun 2020 15:37:06 +0000 (12:37 -0300)]
Merge pull request #595 from triska/faster_format
ENHANCED: faster format/3 when writing to binary streams
Markus Triska [Sun, 14 Jun 2020 08:50:21 +0000 (10:50 +0200)]
use format/3 to benefit from efficiency improvements
Markus Triska [Sun, 14 Jun 2020 08:06:27 +0000 (10:06 +0200)]
ENHANCED: faster format/3 when writing to binary streams
This is also more secure, since it does not change the atom table
and therefore leaves little trace of what was processed.
Mark Thom [Sun, 14 Jun 2020 00:09:19 +0000 (21:09 -0300)]
Merge pull request #589 from triska/lazy_pio
ENHANCED: Read more characters at once, significantly speeding up library(pio)
Mark Thom [Sun, 14 Jun 2020 00:08:54 +0000 (21:08 -0300)]
Merge pull request #593 from triska/portray_clause
ADDED: portray_clause/2, writing to a specified stream.
Mark Thom [Sat, 13 Jun 2020 20:55:32 +0000 (17:55 -0300)]
Merge pull request #594 from triska/scryerrc
explain .scryerrc configuration file
Mark Thom [Sat, 13 Jun 2020 16:46:53 +0000 (10:46 -0600)]
fix broken links in README (#591)
Markus Triska [Fri, 12 Jun 2020 19:07:18 +0000 (21:07 +0200)]
use take() for extra fast processing of binary files
Suggested by @notoria in #589. Many thanks!
Markus Triska [Fri, 12 Jun 2020 18:54:30 +0000 (20:54 +0200)]
better naming: str --> string
Suggested by @notoria in #589. Many thanks!
Markus Triska [Sat, 13 Jun 2020 14:47:02 +0000 (16:47 +0200)]
explain .scryerrc configuration file
Markus Triska [Sat, 13 Jun 2020 14:45:47 +0000 (16:45 +0200)]
ADDED: portray_clause/2, writing to a specified stream.
Markus Triska [Fri, 12 Jun 2020 15:29:18 +0000 (17:29 +0200)]
ENHANCED: Read more characters at once, significantly speeding up library(pio).
Markus Triska [Sat, 13 Jun 2020 07:06:57 +0000 (09:06 +0200)]
ADDED: read_line_to_chars/3, reading up to and including "\n" from a stream, yielding a list difference.
This works for both binary and text streams.
Mark Thom [Sat, 13 Jun 2020 00:32:48 +0000 (18:32 -0600)]
rename bimetatrans example files and directory
Mark Thom [Sat, 13 Jun 2020 00:28:07 +0000 (18:28 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Sat, 13 Jun 2020 00:26:38 +0000 (18:26 -0600)]
remove vestigial prolog/ directory (#444)
Mark Thom [Fri, 12 Jun 2020 14:24:52 +0000 (11:24 -0300)]
Merge pull request #587 from triska/lazy_pio
ENHANCED: phrase_from_file/[2,3] now read the file lazily.
Mark Thom [Fri, 12 Jun 2020 04:28:05 +0000 (22:28 -0600)]
add missing ! in int_pow (#580)
Mark Thom [Fri, 12 Jun 2020 03:25:20 +0000 (21:25 -0600)]
adjust the tail created by CreatePartialString to point to the last cell it pushed to the heap (#586)
Mark Thom [Fri, 12 Jun 2020 03:24:20 +0000 (21:24 -0600)]
credit Ulrich Neumerkel for partial strings in README
Markus Triska [Thu, 11 Jun 2020 14:44:23 +0000 (16:44 +0200)]
include library(pio) and library(charsio) in the itemization
Markus Triska [Thu, 11 Jun 2020 13:29:06 +0000 (15:29 +0200)]
ENHANCED: phrase_from_file/[2,3] now read the file lazily.
This allows processing extremely large files. In addition, the
efficient string representation helps to reduce memory usage.
These features unleash the full power of Prolog for text processing,
the exact use case Prolog was designed for.
Mark Thom [Thu, 11 Jun 2020 18:22:35 +0000 (12:22 -0600)]
remove most cuts from bimetatrans_ruleml.pl
Mark Thom [Thu, 11 Jun 2020 17:11:04 +0000 (11:11 -0600)]
fix printing of atoms like '.x' (#585)
Mark Thom [Thu, 11 Jun 2020 04:25:23 +0000 (22:25 -0600)]
eliminate unnecessary find_min_time_ predicate in least_time.pl example
Mark Thom [Wed, 10 Jun 2020 23:21:44 +0000 (20:21 -0300)]
Merge pull request #582 from triska/format_time
ADDED: format_time//2 for describing strings involving dates and times
Markus Triska [Wed, 10 Jun 2020 21:13:14 +0000 (23:13 +0200)]
ADDED: format_time//2 for describing strings involving dates and times
current_time/1 yields the current system time as an opaque time stamp.
Mark Thom [Wed, 10 Jun 2020 20:29:13 +0000 (14:29 -0600)]
scryer and prolog_parser version bump (#581)
Mark Thom [Wed, 10 Jun 2020 04:15:11 +0000 (22:15 -0600)]
prolog_parser version bump, scryer version bump
Mark Thom [Tue, 9 Jun 2020 21:56:29 +0000 (18:56 -0300)]
Merge pull request #579 from triska/master
ENHANCED: throw Prolog exception on expired certificates
Markus Triska [Tue, 9 Jun 2020 21:01:28 +0000 (23:01 +0200)]
ENHANCED: throw Prolog exception on expired certificates
Example:
?- socket_client_open('expired.badssl.com':443, S, [tls(true)]).
caught: error(permission_error(open,source_sink,'expired.badssl.com'),socket_client_open/3)
Mark Thom [Tue, 9 Jun 2020 13:56:17 +0000 (10:56 -0300)]
Merge pull request #577 from triska/tls
ADDED: Encrypted client connections in library(sockets) via new option tls/1.
Markus Triska [Sun, 7 Jun 2020 16:12:29 +0000 (18:12 +0200)]
ADDED: Encrypted client connections in library(sockets) via new option tls/1.
Use tls(true) to negotiate an encrypted network connection via TLS.
Markus Triska [Sun, 7 Jun 2020 17:24:51 +0000 (19:24 +0200)]
ADDED: type checks for type boolean
Mark Thom [Sun, 7 Jun 2020 22:36:16 +0000 (19:36 -0300)]
Merge pull request #578 from triska/format_improvements
Various improvements for format_//2
Mark Thom [Sun, 7 Jun 2020 22:34:12 +0000 (19:34 -0300)]
Merge pull request #576 from triska/crypto_curve_scalar_mult
ENHANCED: Faster Rust-based crypto_curve_scalar_mult/4 using OpenSSL.
Markus Triska [Sun, 7 Jun 2020 22:07:24 +0000 (00:07 +0200)]
type check for ~d and ~D specifiers
Markus Triska [Sun, 7 Jun 2020 21:14:23 +0000 (23:14 +0200)]
ENHANCED: format_//2 now evaluates arithmetic expressions for ~d, ~D, ~f, ~r and ~R
Example:
?- phrase(format_("~d", [1+2]), Cs).
Cs = "3"
; false.
Markus Triska [Sun, 7 Jun 2020 21:04:42 +0000 (23:04 +0200)]
better domain error in format_//2
Example:
?- format("", [hello]).
caught: error(domain_error(empty_list,[hello]),format_//2)
Markus Triska [Sun, 7 Jun 2020 16:50:36 +0000 (18:50 +0200)]
add type check for scalar argument in crypto_curve_scalar_mult/4
Suggested by @notoria in #576. Many thanks!
Markus Triska [Sun, 7 Jun 2020 09:02:18 +0000 (11:02 +0200)]
use secp256k1 in the example
Markus Triska [Sun, 7 Jun 2020 08:58:40 +0000 (10:58 +0200)]
ENHANCED: Faster Rust-based crypto_curve_scalar_mult/4 using OpenSSL.
Mark Thom [Fri, 5 Jun 2020 05:29:48 +0000 (23:29 -0600)]
s/prolog-implementation/prolog-system (cargo does not allow keywords to exceed 20 characters)
Mark Thom [Fri, 5 Jun 2020 05:25:21 +0000 (23:25 -0600)]
bump version number
Mark Thom [Fri, 5 Jun 2020 05:23:49 +0000 (23:23 -0600)]
update prolog_parser version, correct atom_chars/2 (#379)
Mark Thom [Fri, 5 Jun 2020 03:03:16 +0000 (21:03 -0600)]
remove double_quotes checks from unnecessary places in system_calls.rs and elsewhere (#513, #542)
Mark Thom [Thu, 4 Jun 2020 04:05:46 +0000 (22:05 -0600)]
remove unreachable branch in increment_s_ptr (#575)
Mark Thom [Sat, 30 May 2020 06:17:34 +0000 (00:17 -0600)]
correct unexpected bad variables while ensuring better names are generated in order (#571)
Mark Thom [Wed, 27 May 2020 17:11:37 +0000 (11:11 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Wed, 27 May 2020 17:11:26 +0000 (11:11 -0600)]
order generation of variable names in attributed goals after toplevel variables (#465)
Mark Thom [Wed, 27 May 2020 05:46:09 +0000 (23:46 -0600)]
plug missing variables in equations (#488), exclude/3 regression (#452), incorrect answer substitution (#326)
Mark Thom [Wed, 27 May 2020 03:19:41 +0000 (00:19 -0300)]
Merge pull request #568 from triska/logo
How about an actual raven for a logo?
Markus Triska [Tue, 26 May 2020 17:23:33 +0000 (19:23 +0200)]
ADDED: Logo.
Motivation and considerations:
- A Scryer certainly needs a raven. Ravens are among the most
intelligent animals on earth.
- When writing Prolog programs, a few strokes are often enough.
- Purple is the colour most associated with magic and royalty,
indicating the almost surreal and pure features provided by Scryer,
in the lineage of Marseille Prolog.
- The shape of the silhouette looks a bit like an "S" for "Scryer".
- A square which surrounds the image is traditionally associated with
finishing a proof (square, Latin "quadratum", has the same starting
letters as "quod erat demonstrandum").
I call this raven: *Cryer*. Cryer is an archaic spelling for "crier",
an officer who makes public announcements in a court of justice.
The Prolog top-level likewise makes announcements about what is true.
Mark Thom [Tue, 26 May 2020 16:42:42 +0000 (13:42 -0300)]
Merge pull request #524 from matt2xu/decode_utf8
Add decoding of UTF-8 sequences
Mark Thom [Sat, 23 May 2020 19:02:05 +0000 (16:02 -0300)]
Merge pull request #563 from triska/master
ADDED: halt/1, halting with specified exit code
Mark Thom [Sat, 23 May 2020 19:33:05 +0000 (13:33 -0600)]
throw evaluable type error for unrecognized atoms in arith_eval_by_metacall
Mark Thom [Sat, 23 May 2020 19:07:40 +0000 (13:07 -0600)]
Add type errors where appropriate in arith_eval_by_metacall (#392)
Mark Thom [Sat, 23 May 2020 18:39:29 +0000 (12:39 -0600)]
throw type_error(number, E) in arith_eval_by_metacall (#392)
Mark Thom [Sat, 23 May 2020 18:24:00 +0000 (12:24 -0600)]
(**)/2 should always evaluate to floating point (#558)
Mark Thom [Sat, 23 May 2020 18:12:34 +0000 (12:12 -0600)]
update (^)/2 in light of Draft Technical Corrigendum 3 (#559)
Markus Triska [Sat, 23 May 2020 17:14:29 +0000 (19:14 +0200)]
ADDED: halt/1, halting with specified exit code
Mark Thom [Sat, 23 May 2020 05:57:32 +0000 (23:57 -0600)]
address arity discrepancies in builtins.n and call/N (#525)
Mark Thom [Sat, 23 May 2020 02:43:06 +0000 (23:43 -0300)]
Merge pull request #560 from notoria/cargo
Added some informations in Cargo.toml
Mark Thom [Sat, 23 May 2020 02:42:55 +0000 (23:42 -0300)]
Merge pull request #557 from mthom/docker
Merge Master with Docker branch
notoria [Fri, 22 May 2020 23:55:53 +0000 (01:55 +0200)]
Added some informations in Cargo.toml
Mark Thom [Fri, 22 May 2020 21:58:07 +0000 (15:58 -0600)]
use -1 as eof_code for binary streams (#555)
Mark Thom [Fri, 22 May 2020 21:54:10 +0000 (18:54 -0300)]
Merge pull request #556 from panasenco/docker
Valid Dockerfile and README
Matthieu Wipliez [Sun, 17 May 2020 21:37:41 +0000 (23:37 +0200)]
Implementation of UTF-8 bytes to chars
panasenco [Fri, 22 May 2020 21:01:10 +0000 (14:01 -0700)]
Phrasing
panasenco [Fri, 22 May 2020 20:57:10 +0000 (13:57 -0700)]
Fixed link in Dockerfile documentation. Updated README with working Docker link. Made general improvements to the Docker section of the README now that I'm not in a sleep-deprived zombie state.
panasenco [Fri, 22 May 2020 20:35:14 +0000 (13:35 -0700)]
Revert "Revert "Created and Tested Dockerfile""
This reverts commit
e00d864199549c179a4403fba910b234646cdba5 .
Mark Thom [Fri, 22 May 2020 20:50:51 +0000 (14:50 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Fri, 22 May 2020 20:50:40 +0000 (14:50 -0600)]
correct get_byte/1 not emitted -1 upon discovery of end_of_stream position (#555)
Mark Thom [Fri, 22 May 2020 19:04:03 +0000 (16:04 -0300)]
Merge pull request #552 from mthom/master
Scryer Dockerfile
Mark Thom [Fri, 22 May 2020 17:32:44 +0000 (14:32 -0300)]
Merge pull request #554 from triska/format3
ADDED: format/3, writing formatted output to a stream
Markus Triska [Fri, 22 May 2020 15:30:29 +0000 (17:30 +0200)]
ENHANCED: Faster format/3 for binary streams.
This speeds up web servers considerably when sending binary files.
Markus Triska [Fri, 22 May 2020 15:21:50 +0000 (17:21 +0200)]
ADDED: format/3, writing formatted output to a stream
Both binary and text streams are supported.