]>
Repositorios git - scryer-prolog.git/log
Mark Thom [Tue, 23 Mar 2021 00:13:01 +0000 (18:13 -0600)]
reorder declaration matching in loader.pl
Mark Thom [Mon, 22 Mar 2021 22:53:23 +0000 (16:53 -0600)]
flush loader term queue before compiling declarations, declare '/1' as dynamic before asserting
Mark Thom [Mon, 22 Mar 2021 21:27:45 +0000 (15:27 -0600)]
remove redundant retraction records for incremental compilation
Mark Thom [Mon, 22 Mar 2021 18:44:58 +0000 (12:44 -0600)]
compare the tails of partial string prefixes in compare_pstr_prefixes (#883)
Mark Thom [Sun, 21 Mar 2021 19:00:29 +0000 (13:00 -0600)]
copies only those attributes planted by the calling module
Mark Thom [Sun, 21 Mar 2021 17:58:37 +0000 (11:58 -0600)]
remove vestigial attribute goals struct field and related predicates
Mark Thom [Fri, 19 Mar 2021 22:35:50 +0000 (16:35 -0600)]
rename issue841-occure-check.pl to issue841-occurs-check.pl
Mark Thom [Fri, 19 Mar 2021 22:34:55 +0000 (16:34 -0600)]
recognize cuts in (->)/(,)/(;) calling contexts (#878)
Mark Thom [Thu, 18 Mar 2021 20:51:36 +0000 (14:51 -0600)]
Merge pull request #872 from notoria/charsio
Extend alnum, add forgotten graphic_token
Mark Thom [Thu, 18 Mar 2021 18:50:12 +0000 (12:50 -0600)]
fix findall/4 (#873)
Mark Thom [Thu, 18 Mar 2021 02:23:58 +0000 (20:23 -0600)]
restore deleted parts of number_chars/2 and number_codes/2 (#721)
Mark Thom [Thu, 18 Mar 2021 02:17:08 +0000 (20:17 -0600)]
print floating point zero as 0.0 (#859)
Mark Thom [Thu, 18 Mar 2021 01:50:41 +0000 (19:50 -0600)]
make chars callable (#713)
Mark Thom [Thu, 18 Mar 2021 01:27:53 +0000 (19:27 -0600)]
always print variable bindings before names (#865)
Mark Thom [Thu, 18 Mar 2021 00:58:33 +0000 (18:58 -0600)]
check that a load context path is a filename before potentially returning it as a string
Mark Thom [Thu, 18 Mar 2021 00:13:06 +0000 (18:13 -0600)]
findall/4 should be declared as a meta-predicate (#873)
Mark Thom [Wed, 17 Mar 2021 20:23:34 +0000 (14:23 -0600)]
issue an imcomplete reduction error if stream ends with tokens remaining to be parsed (#871)
notoria [Wed, 17 Mar 2021 19:47:09 +0000 (20:47 +0100)]
Extend alnum, add forgotten graphic_token
Mark Thom [Tue, 16 Mar 2021 19:47:30 +0000 (13:47 -0600)]
remove operators declared at user-level from files when reloading
Mark Thom [Tue, 16 Mar 2021 08:30:09 +0000 (02:30 -0600)]
clear user-level definitions when reloading a file (#455)
Mark Thom [Mon, 15 Mar 2021 20:22:54 +0000 (14:22 -0600)]
don't warn about overwriting a clause asserted to a dynamic predicate whose clauses have all been retracted (#870)
Mark Thom [Sun, 14 Mar 2021 06:22:24 +0000 (23:22 -0700)]
remove intra-module predicates from module code directory when module is being re-defined (#848)
Mark Thom [Sat, 13 Mar 2021 07:39:01 +0000 (00:39 -0700)]
Merge pull request #866 from Skgland/add_tests
Add tests for some recently closed Issues
Skgland [Thu, 11 Mar 2021 16:01:26 +0000 (17:01 +0100)]
fix expected output for syntax_error test
Skgland [Thu, 11 Mar 2021 15:16:31 +0000 (16:16 +0100)]
address problems brought up in review
Skgland [Thu, 11 Mar 2021 00:19:17 +0000 (01:19 +0100)]
add more tests
for some of the recently closed issues
Skgland [Thu, 11 Mar 2021 00:18:11 +0000 (01:18 +0100)]
improve comment
Skgland [Thu, 11 Mar 2021 00:21:20 +0000 (01:21 +0100)]
clean up tests/
give helper function a more descriptive name
Mark Thom [Wed, 10 Mar 2021 23:11:43 +0000 (16:11 -0700)]
fix is_cyclic_term (#864)
Mark Thom [Wed, 10 Mar 2021 20:52:48 +0000 (13:52 -0700)]
Merge pull request #861 from notoria/mod
Small improvement for mod in CLP(Z)
notoria [Wed, 10 Mar 2021 20:19:47 +0000 (21:19 +0100)]
Added a test for mod in CLP(Z)
Mark Thom [Tue, 9 Mar 2021 19:33:06 +0000 (12:33 -0700)]
Merge pull request #862 from notoria/xor
Implemented a propagator for xor in CLP(Z)
notoria [Sun, 7 Mar 2021 19:59:25 +0000 (20:59 +0100)]
Use functional notation in CLP(Z) for compatibility
notoria [Sun, 7 Mar 2021 17:46:47 +0000 (18:46 +0100)]
Implemented a propagator for xor in CLP(Z)
notoria [Sun, 7 Mar 2021 17:38:04 +0000 (18:38 +0100)]
Small improvement for mod in CLP(Z)
Mark Thom [Fri, 5 Mar 2021 19:57:20 +0000 (12:57 -0700)]
Merge pull request #858 from triska/master
CLP(B) correction
Markus Triska [Fri, 5 Mar 2021 17:36:00 +0000 (18:36 +0100)]
is is --> is
Markus Triska [Fri, 5 Mar 2021 17:35:19 +0000 (18:35 +0100)]
FIXED: CLP(B): weighted_maximum/3 with repeated variables
Many thanks to @jburse for reporting this issue:
https://github.com/triska/clpz/issues/15
Example:
?- sat(~(Y*X)), sat(Z=:=Y), weighted_maximum([7,2,5],[X,Y,Z],W).
W = 7, Y = 0, X = 1, Z = 0
; W = 7, Y = 1, X = 0, Z = 1
; false.
Markus Triska [Fri, 5 Mar 2021 17:16:38 +0000 (18:16 +0100)]
adapt comment to Scryer Prolog
Mark Thom [Fri, 5 Mar 2021 08:14:51 +0000 (01:14 -0700)]
qualify '$print_project_attributes_exception' call (#857)
Mark Thom [Thu, 4 Mar 2021 23:05:01 +0000 (16:05 -0700)]
call project_attributes from top-level (#846)
Mark Thom [Thu, 4 Mar 2021 20:53:25 +0000 (13:53 -0700)]
Merge pull request #856 from triska/master
Improvements for library(format)
Markus Triska [Thu, 4 Mar 2021 20:38:39 +0000 (21:38 +0100)]
ENHANCED: more readable indentation of nested disjunctions
Example:
?- portray_clause((h :- a ; b ; c)).
h :-
( a
; b
; c
).
true.
Markus Triska [Thu, 4 Mar 2021 20:33:29 +0000 (21:33 +0100)]
remove unnecessary argument
Mark Thom [Wed, 3 Mar 2021 23:11:03 +0000 (16:11 -0700)]
Merge pull request #854 from triska/master
Better indentation for nested ( If -> Then ; Else ) constructs
Markus Triska [Wed, 3 Mar 2021 21:17:54 +0000 (22:17 +0100)]
use the new portray_clause/1 output for generated definitions
Markus Triska [Wed, 3 Mar 2021 21:13:01 +0000 (22:13 +0100)]
separate side-effects from declarative description to facilitate test cases etc.
Markus Triska [Wed, 3 Mar 2021 21:04:28 +0000 (22:04 +0100)]
ENHANCED: more readable indentation of nested ( If -> Then ; Else ) constructs
Example:
?- portray_clause((h :- ( a -> b ; c -> d ; e, f))).
h :-
( a ->
b
; c ->
d
; e,
f
).
true.
Mark Thom [Wed, 3 Mar 2021 20:56:13 +0000 (13:56 -0700)]
catch exceptions thrown from initialization goals (#852)
Mark Thom [Wed, 3 Mar 2021 19:16:47 +0000 (12:16 -0700)]
has_tail must be false for use as a filename from open/{3,4}
Mark Thom [Wed, 3 Mar 2021 06:36:59 +0000 (23:36 -0700)]
Merge pull request #851 from Skgland/fix_num_test2
Workaround to make num tests work
Skgland [Wed, 3 Mar 2021 00:16:13 +0000 (01:16 +0100)]
workaround to make num tests work
Mark Thom [Tue, 2 Mar 2021 18:59:22 +0000 (11:59 -0700)]
Merge pull request #849 from triska/master
Remove duplicated definitions
Markus Triska [Tue, 2 Mar 2021 18:59:57 +0000 (19:59 +0100)]
remove min_/3 and max_/3 which are also defined elsewhere
Markus Triska [Tue, 2 Mar 2021 18:58:20 +0000 (19:58 +0100)]
remove group_pairs_by_key/2, which is now provided by library(pairs)
Mark Thom [Tue, 2 Mar 2021 18:43:47 +0000 (11:43 -0700)]
warn when overwriting a predicate (#848)
Mark Thom [Tue, 2 Mar 2021 16:50:25 +0000 (09:50 -0700)]
do not check for non-unifiability in dif:attribute_goals, which is sure to succeed, resulting in no goals being printed at top-level (#844)
Mark Thom [Mon, 1 Mar 2021 18:45:53 +0000 (11:45 -0700)]
Merge pull request #845 from triska/master
explain the new occurs_check flag
Markus Triska [Mon, 1 Mar 2021 18:42:16 +0000 (19:42 +0100)]
explain the new occurs_check flag
Mark Thom [Mon, 1 Mar 2021 06:26:22 +0000 (23:26 -0700)]
use atom_chars to convert .scryerrc path string to atom
Mark Thom [Mon, 1 Mar 2021 02:12:35 +0000 (19:12 -0700)]
use plain ! while interpreting control functors in metacalls (#724)
Mark Thom [Mon, 1 Mar 2021 02:01:36 +0000 (19:01 -0700)]
apply expand_module_names to call(A) goals
Mark Thom [Mon, 1 Mar 2021 01:56:24 +0000 (18:56 -0700)]
suppress tabled/2 existence errors in tabling library, do not print evaluation errors generated by term and goal expansion in loader.pl
Mark Thom [Mon, 1 Mar 2021 01:29:35 +0000 (18:29 -0700)]
Merge pull request #843 from mthom/rebis-dev
Merge rebis-dev into master
Mark Thom [Mon, 1 Mar 2021 01:28:12 +0000 (18:28 -0700)]
check that Module is an atom before calling Module:goal_expansion/2
Mark Thom [Mon, 1 Mar 2021 01:15:33 +0000 (18:15 -0700)]
wrap variable goals in module-expanded call/1
Mark Thom [Mon, 1 Mar 2021 00:57:35 +0000 (17:57 -0700)]
do not print error messages if .scryerrc[.pl] does not exist (#842)
Mark Thom [Sun, 28 Feb 2021 23:19:37 +0000 (16:19 -0700)]
print errors arising from term and goal expansion calls from loader.pl
Mark Thom [Sun, 28 Feb 2021 23:19:06 +0000 (16:19 -0700)]
introduce bind_fn, use in applicable Fact/Query instructions (#841)
Mark Thom [Sun, 28 Feb 2021 19:28:19 +0000 (12:28 -0700)]
pop non-composite terms from iter stack in is_cyclic_term
Mark Thom [Sun, 28 Feb 2021 18:44:07 +0000 (11:44 -0700)]
add error value to occurs_check prolog flag (#783)
Mark Thom [Sun, 28 Feb 2021 18:39:24 +0000 (11:39 -0700)]
Merge pull request #838 from Skgland/librarify
Split main.rs into lib.rs and bin/scryer-prolog.rs
Skgland [Fri, 26 Feb 2021 18:58:55 +0000 (19:58 +0100)]
revert removal of PartialEq
Skgland [Fri, 26 Feb 2021 16:24:31 +0000 (17:24 +0100)]
move the signal handler to the binary
Skgland [Fri, 26 Feb 2021 16:19:38 +0000 (17:19 +0100)]
remove #[allow(dead_code)]
only commenting out the unused variant as `OptArgIndexKeyType`
as it appears to mirror `OptArgIndexKey` and there List is not unused
so this appears to be not yet used rather than obsolete
Skgland [Fri, 26 Feb 2021 00:03:05 +0000 (01:03 +0100)]
fix CI lib build with beta compiler
Skgland [Thu, 25 Feb 2021 22:42:41 +0000 (23:42 +0100)]
adjust ci
Skgland [Thu, 25 Feb 2021 22:24:20 +0000 (23:24 +0100)]
split into lib and bin
* makes most pub things in src/ pub(crate) as not to expose things accidentally
* only those things needed by src/bin/scryer-prolog.rs and tests/scryer.rs
should be pub
* split src/main.rs into src/lib.rs and src/bin/scryer-prolog.rs
* add tests folder and run most of the files in src/tests with cargo test
added bytes method to Stream in src/machine/streams.rs to check if stdout is as expected
Mark Thom [Sun, 28 Feb 2021 18:03:55 +0000 (11:03 -0700)]
restore .scryerrc loading
Mark Thom [Sun, 28 Feb 2021 17:41:32 +0000 (10:41 -0700)]
add occurs_check flag (#309)
Mark Thom [Sun, 28 Feb 2021 16:15:03 +0000 (09:15 -0700)]
enable op declarations with lists of operands using term expansion (#839)
Mark Thom [Sun, 28 Feb 2021 09:09:53 +0000 (02:09 -0700)]
add lines read from devour_whitespace (#836)
Mark Thom [Sun, 28 Feb 2021 07:27:50 +0000 (00:27 -0700)]
set compilation_target of assert loader to match that of predicate qualifier
Mark Thom [Sun, 28 Feb 2021 06:56:58 +0000 (23:56 -0700)]
update the parser with the number of lines already read by the underlying stream (#836)
Mark Thom [Sun, 28 Feb 2021 05:51:32 +0000 (22:51 -0700)]
implement logical update semantics for dynamic database predicates
Mark Thom [Thu, 25 Feb 2021 22:17:16 +0000 (15:17 -0700)]
Merge pull request #837 from triska/rebis-dev
Small improvements for Rebis
Markus Triska [Thu, 25 Feb 2021 21:40:31 +0000 (22:40 +0100)]
add entry for library(lambda)
Markus Triska [Thu, 25 Feb 2021 20:45:06 +0000 (21:45 +0100)]
omit internal residual goals for global_cardinality/2
Markus Triska [Thu, 18 Feb 2021 19:33:27 +0000 (20:33 +0100)]
remove unused attribute_goal/2
Mark Thom [Thu, 25 Feb 2021 21:26:41 +0000 (14:26 -0700)]
Merge pull request #835 from triska/lambda
ADDED: library(lambda) by Ulrich Neumerkel
Markus Triska [Thu, 25 Feb 2021 21:06:09 +0000 (22:06 +0100)]
adapt libraries and toplevel output to Scryer Prolog
Markus Triska [Thu, 25 Feb 2021 21:02:51 +0000 (22:02 +0100)]
use individual meta_predicate/1 declarations
Markus Triska [Thu, 25 Feb 2021 21:00:44 +0000 (22:00 +0100)]
ADDED: library(lambda) by Ulrich Neumerkel.
Source: http://www.complang.tuwien.ac.at/ulrich/Prolog-inedit/lambda.pl
More information:
http://www.complang.tuwien.ac.at/ulrich/Prolog-inedit/ISO-Hiord
Mark Thom [Tue, 23 Feb 2021 05:39:34 +0000 (22:39 -0700)]
add copy_term_nat/2 (#795)
Mark Thom [Tue, 23 Feb 2021 01:33:35 +0000 (18:33 -0700)]
no longer delay verify_attributes for cut instructions (#807)
Mark Thom [Tue, 23 Feb 2021 01:27:30 +0000 (18:27 -0700)]
no longer generate a choice point in bb_b_put/2 (#742)
Mark Thom [Mon, 22 Feb 2021 20:23:22 +0000 (13:23 -0700)]
consume whitespace before reading a term in loader.pl, modify prolog_load_context at file key to better reflect loading context, use it when reporting singleton variables (#812)
Mark Thom [Mon, 22 Feb 2021 09:00:25 +0000 (02:00 -0700)]
extend existing local predicate skeletons in LoadState::compile
Mark Thom [Mon, 22 Feb 2021 02:19:43 +0000 (19:19 -0700)]
anonymize singleton variables in iso_ext.pl, charsio.pl
Mark Thom [Mon, 22 Feb 2021 02:18:06 +0000 (19:18 -0700)]
issue singleton variable warnings from loader.pl (#812)