]> Repositorios git - scryer-prolog.git/log
scryer-prolog.git
5 years agoremove VNs variable from loader.pl
Mark Thom [Wed, 17 Feb 2021 20:31:58 +0000 (13:31 -0700)]
remove VNs variable from loader.pl

5 years agoremove unnecessary cause of failure in parser, qualify call to op_/3 in builtins.pl
Mark Thom [Wed, 17 Feb 2021 18:56:58 +0000 (11:56 -0700)]
remove unnecessary cause of failure in parser, qualify call to op_/3 in builtins.pl

5 years agoadd missing variable checks in various places
Mark Thom [Wed, 17 Feb 2021 18:12:19 +0000 (11:12 -0700)]
add missing variable checks in various places

5 years agohandle user:goal_expansion, but not Target:goal_expansion, explicitly in loader.pl
Mark Thom [Wed, 17 Feb 2021 08:15:29 +0000 (01:15 -0700)]
handle user:goal_expansion, but not Target:goal_expansion, explicitly in loader.pl

5 years agosupport discontiguous and multifile declarations
Mark Thom [Wed, 17 Feb 2021 03:54:51 +0000 (20:54 -0700)]
support discontiguous and multifile declarations

5 years agocompile scoped clauses from loader.pl
Mark Thom [Sun, 14 Feb 2021 02:41:04 +0000 (19:41 -0700)]
compile scoped clauses from loader.pl

5 years agoremove vestigial uses of constant_eq
Mark Thom [Fri, 12 Feb 2021 02:22:03 +0000 (19:22 -0700)]
remove vestigial uses of constant_eq

5 years agoBox LoadStatePayload when storing it in the heap
Mark Thom [Fri, 12 Feb 2021 02:21:20 +0000 (19:21 -0700)]
Box LoadStatePayload when storing it in the heap

5 years agoremove unused is_internal function from indexing.rs
Mark Thom [Fri, 12 Feb 2021 01:51:21 +0000 (18:51 -0700)]
remove unused is_internal function from indexing.rs

5 years agouse machine-generated PartialEq instance for hashing Constant (#817)
Mark Thom [Fri, 12 Feb 2021 01:40:07 +0000 (18:40 -0700)]
use machine-generated PartialEq instance for hashing Constant (#817)

5 years agoupdate call/N indices in user-level code_dir in addition to those of pre-loaded modules
Mark Thom [Thu, 11 Feb 2021 22:38:30 +0000 (15:38 -0700)]
update call/N indices in user-level code_dir in addition to those of pre-loaded modules

5 years agooffset SwitchOnTerm's Internal indices only if the proper instructions were emitted
Mark Thom [Thu, 11 Feb 2021 22:38:16 +0000 (15:38 -0700)]
offset SwitchOnTerm's Internal indices only if the proper instructions were emitted

5 years agoroll back extent of heap when loads are complete in loader.pl
Mark Thom [Thu, 11 Feb 2021 22:37:43 +0000 (15:37 -0700)]
roll back extent of heap when loads are complete in loader.pl

5 years agouse IndexMap over HashMap in prolog_parser
Mark Thom [Thu, 11 Feb 2021 22:35:14 +0000 (15:35 -0700)]
use IndexMap over HashMap in prolog_parser

5 years agobreak out of the first inner loop if constants contains no key in remove_constant_ind...
Mark Thom [Wed, 10 Feb 2021 21:13:37 +0000 (14:13 -0700)]
break out of the first inner loop if constants contains no key in remove_constant_indices (#816)

5 years agoMerge pull request #813 from triska/rebis-dev
Mark Thom [Wed, 10 Feb 2021 00:57:08 +0000 (17:57 -0700)]
Merge pull request #813 from triska/rebis-dev

~| now incorporates the number of characters described so far

5 years agoreset merging_ptr offset before insertion of each overlapping constant (#816)
Mark Thom [Wed, 10 Feb 2021 00:18:00 +0000 (17:18 -0700)]
reset merging_ptr offset before insertion of each overlapping constant (#816)

5 years agocheck for control functors (,/;/->) before jumping to internal interpretation (#815)
Mark Thom [Tue, 9 Feb 2021 23:40:25 +0000 (16:40 -0700)]
check for control functors (,/;/->) before jumping to internal interpretation (#815)

5 years agoqualify exception handling code in loader.pl (#809)
Mark Thom [Tue, 9 Feb 2021 22:47:14 +0000 (15:47 -0700)]
qualify exception handling code in loader.pl (#809)

5 years agoMerge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev
Mark Thom [Tue, 9 Feb 2021 21:30:09 +0000 (14:30 -0700)]
Merge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev

5 years ago~| now incorporates the number of characters described so far
Markus Triska [Tue, 9 Feb 2021 19:52:26 +0000 (20:52 +0100)]
~| now incorporates the number of characters described so far

Therefore, subsequent uses of ~N| now yield the specified column,
instead of potentially overshooting.

Example:

    ?- format("hello~|~t~8|!", []).
    hello   !   true.

Such cases are probably rather uncommon: Relative positioning with ~N+
is more likely to be used in such cases, and that worked as intended
also previously as it does now:

    ?- format("hello~|~t~3+!", []).
    hello   !   true.

In fact, if absolute positions are used, then ~| can be omitted entirely:

    ?- format("hello~t~8|!", []).
    hello   !   true.

5 years agothrow exceptions when modules do not contain claimed exports
Mark Thom [Tue, 9 Feb 2021 19:17:34 +0000 (12:17 -0700)]
throw exceptions when modules do not contain claimed exports

5 years agocorrect faulty removal of clauses in abolish/1
Mark Thom [Tue, 9 Feb 2021 01:46:33 +0000 (18:46 -0700)]
correct faulty removal of clauses in abolish/1

5 years agoclean up implementation of (->)/2, (;)/2, and (,)/2
Mark Thom [Mon, 8 Feb 2021 04:13:27 +0000 (21:13 -0700)]
clean up implementation of (->)/2, (;)/2, and (,)/2

5 years agoremove tidy_trail
Mark Thom [Sun, 7 Feb 2021 22:39:48 +0000 (15:39 -0700)]
remove tidy_trail

5 years agoappend .pl to names of files that do not exist in loader.pl
Mark Thom [Sun, 7 Feb 2021 22:38:03 +0000 (15:38 -0700)]
append .pl to names of files that do not exist in loader.pl

5 years agouse parent() instead of ancestors().next() in load_context_directory()
Mark Thom [Sun, 7 Feb 2021 20:47:06 +0000 (13:47 -0700)]
use parent() instead of ancestors().next() in load_context_directory()

5 years agoMerge branch 'Skgland-clean_up' into rebis-dev
Mark Thom [Sun, 7 Feb 2021 07:34:57 +0000 (00:34 -0700)]
Merge branch 'Skgland-clean_up' into rebis-dev

5 years agochange reposity url
Bennet Bleßmann [Sat, 6 Feb 2021 21:38:40 +0000 (22:38 +0100)]
change reposity url

5 years agorename `prolog_parser_rebis` to `prolog_parser`
Skgland [Sat, 6 Feb 2021 20:57:27 +0000 (21:57 +0100)]
rename `prolog_parser_rebis` to `prolog_parser`

also remove remaining extern crate statements that slipped through earlier

5 years agofix incorrect rug path
Skgland [Sat, 6 Feb 2021 19:26:22 +0000 (20:26 +0100)]
fix incorrect rug path

5 years agomore clippy lints
Skgland [Sat, 6 Feb 2021 18:58:31 +0000 (19:58 +0100)]
more clippy lints

5 years agomore clippy lints
Skgland [Sat, 6 Feb 2021 18:53:53 +0000 (19:53 +0100)]
more clippy lints

5 years agofix clippy lint match|if let looks like matches! macro
Skgland [Sat, 6 Feb 2021 18:52:41 +0000 (19:52 +0100)]
fix clippy lint match|if let looks like matches! macro

5 years agofix clippy lint `Manual RangeInclusive::contains implementation`
Skgland [Sat, 6 Feb 2021 18:49:32 +0000 (19:49 +0100)]
fix clippy lint `Manual RangeInclusive::contains implementation`

5 years agofix some clippy lint warnings
Skgland [Sat, 6 Feb 2021 18:45:21 +0000 (19:45 +0100)]
fix some clippy lint warnings

5 years agofix macro hygien
Skgland [Sat, 6 Feb 2021 18:39:02 +0000 (19:39 +0100)]
fix macro hygien

5 years agochange prolog_parse_rebis to use 2018 edition rust
Skgland [Sat, 6 Feb 2021 18:32:52 +0000 (19:32 +0100)]
change prolog_parse_rebis to use 2018 edition rust

so all crates use the same edition

5 years agoremove use statements from main.rs that temporary replaced extern crate and fixed...
Skgland [Sat, 6 Feb 2021 18:30:46 +0000 (19:30 +0100)]
remove use statements from main.rs that temporary replaced extern crate and fixed paths that previously used them

5 years agoremove extern crate declaration and fix outfall (macros now need to be imported into...
Skgland [Sat, 6 Feb 2021 18:21:24 +0000 (19:21 +0100)]
remove extern crate declaration and fix outfall (macros now need to be imported into scope)

using use declarations in main.rs so that use paths don't need to be updated as well, this will be done in a later commit

5 years agoset rustyline to check the cursor position (#802), don't add .pl extension to files...
Mark Thom [Sat, 6 Feb 2021 20:47:26 +0000 (13:47 -0700)]
set rustyline to check the cursor position (#802), don't add .pl extension to files in loader.pl (#800)

5 years agoremove dynamic clause declaration for clause internal
Mark Thom [Sat, 6 Feb 2021 06:16:42 +0000 (23:16 -0700)]
remove dynamic clause declaration for clause internal

5 years agoshed module names from arguments of the (->)/2, (,)/2, (;)/2 predicates
Mark Thom [Sat, 6 Feb 2021 05:50:57 +0000 (22:50 -0700)]
shed module names from arguments of the (->)/2, (,)/2, (;)/2 predicates

5 years agocollate paths as atoms in loader.pl (#778)
Mark Thom [Sat, 6 Feb 2021 03:18:56 +0000 (20:18 -0700)]
collate paths as atoms in loader.pl (#778)

5 years agogather initialization goals and call them once load succeeds (#792)
Mark Thom [Sat, 6 Feb 2021 01:40:13 +0000 (18:40 -0700)]
gather initialization goals and call them once load succeeds (#792)

5 years agoimplement abolish/1
Mark Thom [Sat, 6 Feb 2021 01:06:27 +0000 (18:06 -0700)]
implement abolish/1

5 years agoMerge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev
Mark Thom [Sat, 6 Feb 2021 00:17:14 +0000 (17:17 -0700)]
Merge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev

5 years agobootstrap the top-level by calling ''/1 as in master (#790)
Mark Thom [Sat, 6 Feb 2021 00:16:42 +0000 (17:16 -0700)]
bootstrap the top-level by calling ''/1 as in master (#790)

5 years agodelay premature set_switch_var_offset_* calls in retract_clause, add module resolutio...
Mark Thom [Sat, 6 Feb 2021 00:12:25 +0000 (17:12 -0700)]
delay premature set_switch_var_offset_* calls in retract_clause, add module resolution for asserta/assertz/retract/clause

5 years agoMerge pull request #798 from triska/rebis-dev
Mark Thom [Fri, 5 Feb 2021 20:24:53 +0000 (13:24 -0700)]
Merge pull request #798 from triska/rebis-dev

CLP(ℤ) enhancements for Rebis

5 years agomake load_context_path/2 handle .pl file extensions, remove commented out code
Mark Thom [Fri, 5 Feb 2021 20:13:54 +0000 (13:13 -0700)]
make load_context_path/2 handle .pl file extensions, remove commented out code

5 years agoENHANCED: Enable goal expansion for CLP(ℤ).
Markus Triska [Fri, 5 Feb 2021 20:06:08 +0000 (21:06 +0100)]
ENHANCED: Enable goal expansion for CLP(ℤ).

This is now possible since #445 is resolved.

5 years agoRevert "preliminary workaround for #788"
Markus Triska [Fri, 5 Feb 2021 19:59:47 +0000 (20:59 +0100)]
Revert "preliminary workaround for #788"

This reverts commit 164b9930640656700505188eab684b3575ab1fe8,
which was made obsolete by 75a52f032b95fc74c1c3fa93996fd0f61775c28f.

5 years agoimplement dynamic, multifile, and discontiguous properties and callable type checking...
Mark Thom [Fri, 5 Feb 2021 09:16:14 +0000 (02:16 -0700)]
implement dynamic, multifile, and discontiguous properties and callable type checking for predicate_property/2

5 years agoremove defunct reset function (#782)
Mark Thom [Fri, 5 Feb 2021 04:02:34 +0000 (21:02 -0700)]
remove defunct reset function (#782)

5 years agomodify rightmost_power/2 to ignore module qualification on (^)/2 (#794)
Mark Thom [Fri, 5 Feb 2021 03:51:55 +0000 (20:51 -0700)]
modify rightmost_power/2 to ignore module qualification on (^)/2 (#794)

5 years agoperform goal expansion in call/N (#788, #797)
Mark Thom [Thu, 4 Feb 2021 23:59:16 +0000 (16:59 -0700)]
perform goal expansion in call/N (#788, #797)

5 years agoMerge pull request #793 from triska/rebis-dev
Mark Thom [Thu, 4 Feb 2021 19:51:09 +0000 (12:51 -0700)]
Merge pull request #793 from triska/rebis-dev

preliminary workaround for #788

5 years agopreliminary workaround for #788
Markus Triska [Thu, 4 Feb 2021 19:48:09 +0000 (20:48 +0100)]
preliminary workaround for #788

This change can be reverted once the issue is resolved.

5 years agoMerge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev
Mark Thom [Thu, 4 Feb 2021 05:34:34 +0000 (22:34 -0700)]
Merge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev

5 years agorespect module context in expand_module_names (#788)
Mark Thom [Wed, 3 Feb 2021 23:47:04 +0000 (16:47 -0700)]
respect module context in expand_module_names (#788)

5 years agoresolve calls to tranpose_ and same_length in lists.pl (#790)
Mark Thom [Wed, 3 Feb 2021 23:38:44 +0000 (16:38 -0700)]
resolve calls to tranpose_ and same_length in lists.pl (#790)

5 years agointroduce cuts over indexed (:)/2 of dcgs:phrase_/3 (#786)
Mark Thom [Wed, 3 Feb 2021 23:03:12 +0000 (16:03 -0700)]
introduce cuts over indexed (:)/2 of dcgs:phrase_/3 (#786)

5 years agoMerge pull request #787 from triska/rebis-dev
Mark Thom [Wed, 3 Feb 2021 22:51:15 +0000 (15:51 -0700)]
Merge pull request #787 from triska/rebis-dev

add meta_predicate declaration for with_local_attributes/3

5 years agoadd meta_predicate declaration for must_succeed/1
Markus Triska [Wed, 3 Feb 2021 22:49:28 +0000 (23:49 +0100)]
add meta_predicate declaration for must_succeed/1

5 years agoenable phrase_ rules for module resolved grammars (#785)
Mark Thom [Wed, 3 Feb 2021 22:48:09 +0000 (15:48 -0700)]
enable phrase_ rules for module resolved grammars (#785)

5 years agoadd meta_predicate declaration for with_local_attributes/3
Markus Triska [Wed, 3 Feb 2021 22:45:06 +0000 (23:45 +0100)]
add meta_predicate declaration for with_local_attributes/3

This is needed for all_distinct/1 etc.

Example:

    ?- all_distinct([X,Y,Z]).
       clpz:all_distinct([X,Y,Z])
    ;  false.

5 years agomanually expand module names in higher-order predicates of lists.pl and give call_res...
Mark Thom [Wed, 3 Feb 2021 22:37:16 +0000 (15:37 -0700)]
manually expand module names in higher-order predicates of lists.pl and give call_residue_vars/2 a meta-predicate definition

5 years agoUse term expansion for generated predicates.
Markus Triska [Fri, 8 Jan 2021 16:28:29 +0000 (17:28 +0100)]
Use term expansion for generated predicates.

5 years agorestore cut after dcg_constr check (#784)
Mark Thom [Wed, 3 Feb 2021 22:18:38 +0000 (15:18 -0700)]
restore cut after dcg_constr check (#784)

5 years agoadd meta-predicate declarations to reif library
Mark Thom [Wed, 3 Feb 2021 19:46:33 +0000 (12:46 -0700)]
add meta-predicate declarations to reif library

5 years agoMerge branch 'master' into rebis-dev
Mark Thom [Wed, 3 Feb 2021 19:00:00 +0000 (12:00 -0700)]
Merge branch 'master' into rebis-dev

5 years agorestore prolog_parser test files (#782)
Mark Thom [Wed, 3 Feb 2021 18:19:33 +0000 (11:19 -0700)]
restore prolog_parser test files (#782)

5 years agodo not traverse data structures when binding to local variables in unify_with_occurs_...
Mark Thom [Wed, 3 Feb 2021 18:11:22 +0000 (11:11 -0700)]
do not traverse data structures when binding to local variables in unify_with_occurs_check (#781)

5 years agouse find_inner_choice_instr when appending an indexed clause to an indexed subsequence
Mark Thom [Wed, 3 Feb 2021 08:22:13 +0000 (01:22 -0700)]
use find_inner_choice_instr when appending an indexed clause to an indexed subsequence

5 years agoMerge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev
Mark Thom [Wed, 3 Feb 2021 05:59:28 +0000 (22:59 -0700)]
Merge branch 'rebis-dev' of https://github.com/mthom/scryer-prolog into rebis-dev

5 years agoexpand attributed variable goals
Mark Thom [Wed, 3 Feb 2021 04:47:59 +0000 (21:47 -0700)]
expand attributed variable goals

5 years agoreplace Char '!' with QueryTerm::BlockedCut
Mark Thom [Wed, 3 Feb 2021 04:03:15 +0000 (21:03 -0700)]
replace Char '!' with QueryTerm::BlockedCut

5 years agoset target_pos' clause_start correctly in append_compiled_clause
Mark Thom [Wed, 3 Feb 2021 00:42:43 +0000 (17:42 -0700)]
set target_pos' clause_start correctly in append_compiled_clause

5 years agoMerge pull request #774 from brightly-salty/re-add-prolog_parser
Mark Thom [Wed, 3 Feb 2021 00:56:26 +0000 (17:56 -0700)]
Merge pull request #774 from brightly-salty/re-add-prolog_parser

Add prolog_parser to scryer_prolog

5 years agoAdd prolog_parser
Caden Haustein [Wed, 3 Feb 2021 00:35:41 +0000 (18:35 -0600)]
Add prolog_parser

5 years agoexport loader's public predicates from builtins, handle module resolution from DCGs
Mark Thom [Tue, 2 Feb 2021 22:43:52 +0000 (15:43 -0700)]
export loader's public predicates from builtins, handle module resolution from DCGs

5 years agoadd built_in to predicate_property
Mark Thom [Tue, 2 Feb 2021 22:03:14 +0000 (15:03 -0700)]
add built_in to predicate_property

5 years agoadd meta-predicate declarations before their definitions
Mark Thom [Tue, 2 Feb 2021 02:26:50 +0000 (19:26 -0700)]
add meta-predicate declarations before their definitions

5 years agomove term expansion logic entirely into loader.pl
Mark Thom [Mon, 1 Feb 2021 23:50:05 +0000 (16:50 -0700)]
move term expansion logic entirely into loader.pl

5 years agoadd module scoping to predicate_property, expand subgoals in module resolved predicates
Mark Thom [Mon, 1 Feb 2021 23:09:19 +0000 (16:09 -0700)]
add module scoping to predicate_property, expand subgoals in module resolved predicates

5 years agocall attribute variable goals with module resolution
Mark Thom [Mon, 1 Feb 2021 21:48:13 +0000 (14:48 -0700)]
call attribute variable goals with module resolution

5 years agoreplace (:) with 0 in meta-predicate declarations, remove support for (:) in meta...
Mark Thom [Mon, 1 Feb 2021 01:00:10 +0000 (18:00 -0700)]
replace (:) with 0 in meta-predicate declarations, remove support for (:) in meta-predicate declarations

5 years agoMerge branch 'master' into rebis-dev
Mark Thom [Sun, 31 Jan 2021 19:41:18 +0000 (12:41 -0700)]
Merge branch 'master' into rebis-dev

5 years agoMerge pull request #771 from notoria/args
Mark Thom [Sun, 31 Jan 2021 19:11:57 +0000 (12:11 -0700)]
Merge pull request #771 from notoria/args

Handled the empty case (#770)

5 years agoFix errors, move prolog_parser
Caden Haustein [Sun, 31 Jan 2021 18:43:39 +0000 (12:43 -0600)]
Fix errors, move prolog_parser

5 years agoAdd prolog_parser to scryer_prolog
Caden Haustein [Sun, 31 Jan 2021 17:40:20 +0000 (11:40 -0600)]
Add prolog_parser to scryer_prolog

5 years agoHandled the empty case (#770)
notoria [Sun, 31 Jan 2021 10:03:17 +0000 (11:03 +0100)]
Handled the empty case (#770)

5 years agofix bug in append_compiled_clause, generalize merging indexed subsequences of clauses
Mark Thom [Sun, 31 Jan 2021 08:18:45 +0000 (01:18 -0700)]
fix bug in append_compiled_clause, generalize merging indexed subsequences of clauses

5 years agoproperly thread functors whose first subterm is a variable in thread_goals/4
Mark Thom [Sun, 31 Jan 2021 06:37:23 +0000 (23:37 -0700)]
properly thread functors whose first subterm is a variable in thread_goals/4

5 years agotarget prolog_parser_rebis on crates.io
Mark Thom [Sun, 31 Jan 2021 05:03:07 +0000 (22:03 -0700)]
target prolog_parser_rebis on crates.io

5 years agoexplain motive for Rebis development branch in README.md
Mark Thom [Sun, 31 Jan 2021 04:28:45 +0000 (21:28 -0700)]
explain motive for Rebis development branch in README.md

5 years agomove to a predicate-based module system, move to loader.[rs|pl]-based compilation...
Mark Thom [Sat, 30 Jan 2021 21:32:47 +0000 (14:32 -0700)]
move to a predicate-based module system, move to loader.[rs|pl]-based compilation, add support for incremental clause compilation

5 years agoMerge pull request #766 from aarroyoc/http-form
Mark Thom [Sat, 30 Jan 2021 20:55:40 +0000 (13:55 -0700)]
Merge pull request #766 from aarroyoc/http-form

HTTP Server: urlencoded forms and some syntax improvements

5 years agoMerge pull request #769 from notoria/between
Mark Thom [Sat, 30 Jan 2021 20:55:05 +0000 (13:55 -0700)]
Merge pull request #769 from notoria/between

Removed redundant choicepoint from between/3