]>
Repositorios git - scryer-prolog.git/log
Mark [Sat, 10 Jun 2023 07:25:47 +0000 (01:25 -0600)]
improve call/N implementation (#1829)
Mark [Tue, 6 Jun 2023 06:58:44 +0000 (00:58 -0600)]
set_local_value does not make values safe (#1812)
Mark [Tue, 30 May 2023 02:49:54 +0000 (20:49 -0600)]
read set_value args from temp regs of put_unsafe_value (#1812)
Markus Triska [Mon, 29 May 2023 09:12:00 +0000 (11:12 +0200)]
FIXED: correct dereferencing in atom_codes/2 and number_codes/2.
This addresses #1818.
Test case:
run :-
length(Ls, L),
portray_clause(L),
maplist(=(X), Ls),
X = Y,
Y = 12,
atom_codes(_, Ls),
false.
Adrián Arroyo Calle [Sun, 28 May 2023 22:29:53 +0000 (00:29 +0200)]
Rename INDEX.md to INDEX.dj and add banner about Scryer Prolog Meetup
Mark [Fri, 26 May 2023 21:19:07 +0000 (15:19 -0600)]
read from machine stack in stackful pre-order iterator (#1812)
notoria [Sat, 27 May 2023 11:47:14 +0000 (13:47 +0200)]
Compute correctly the domain of the remainder
notoria [Sat, 27 May 2023 11:19:19 +0000 (13:19 +0200)]
Don't add variable
?- Z #= 0, Z #= X mod Y.
Z = 0, clpz:(_A*Y#=X), clpz:(Y in inf.. -1\/1..sup) % Unexpected.
The expected result:
Z = 0, clpz:(X mod Y#=0), clpz:(Y in inf.. -1\/1..sup).
notoria [Sat, 27 May 2023 11:08:25 +0000 (13:08 +0200)]
Remove and move comments
Mark [Fri, 26 May 2023 21:19:07 +0000 (15:19 -0600)]
optionally read from machine stack in stackful pre-order iterator (#1812)
Mark [Wed, 24 May 2023 19:43:52 +0000 (13:43 -0600)]
affirm integers as rational/1 (#1810)
Adrián Arroyo Calle [Wed, 17 May 2023 16:19:19 +0000 (18:19 +0200)]
Update select crate to 0.6.0 and remove warning
Markus Triska [Tue, 16 May 2023 20:42:10 +0000 (22:42 +0200)]
FIXED: correctly reset counter in reset_gensym/2 (#1807)
Many thanks to @infradig for detecting this issue and suggesting this
correction!
Markus Triska [Tue, 16 May 2023 20:41:20 +0000 (22:41 +0200)]
shorten gensym/2
Markus Triska [Sun, 14 May 2023 07:14:10 +0000 (09:14 +0200)]
extend logic to all control and whitespace characters
This addresses #1802.
Mark [Wed, 10 May 2023 06:04:35 +0000 (00:04 -0600)]
use same logic to print Chars and Atoms (#1804)
Markus Triska [Wed, 3 May 2023 22:50:27 +0000 (00:50 +0200)]
rely on first instantiated argument indexing in the definitions of foldl/N
This allows shorter and more natural definitions.
Markus Triska [Wed, 3 May 2023 19:56:04 +0000 (21:56 +0200)]
ENHANCED: allow Roman numerals in strings
Example:
?- X = "ↁ".
X = "ↁ".
This addresses #1790.
Markus Triska [Wed, 3 May 2023 21:23:53 +0000 (23:23 +0200)]
FIXED: consistent read/write of further control characters, and non-breaking space
Example:
?- X = '\xa0\'.
X = '\xa0\'.
This addresses #1768.
Mark [Fri, 23 Jun 2023 00:50:20 +0000 (18:50 -0600)]
make tests compatible
Mark [Fri, 23 Jun 2023 00:28:10 +0000 (18:28 -0600)]
backtrack on emission of unsafe register instructions on internal branches
Mark [Sat, 17 Jun 2023 22:28:56 +0000 (16:28 -0600)]
implement new disjunction compilation
Mark Thom [Tue, 31 Jan 2023 06:26:50 +0000 (23:26 -0700)]
remove BuildIf, BuildNot, BuildThen TermIterState variants
Mark Thom [Sun, 1 Jan 2023 18:04:46 +0000 (11:04 -0700)]
correct chunk type labeling
Mark Thom [Wed, 28 Dec 2022 06:42:35 +0000 (23:42 -0700)]
remove GetLevelAndUnify and replace it with GetCutPoint
Mark Thom [Wed, 28 Dec 2022 06:19:18 +0000 (23:19 -0700)]
add QueryTerm::ChunkTypeBoundary
Mark Thom [Wed, 28 Dec 2022 04:29:29 +0000 (21:29 -0700)]
delete ChunkedTerm, chunked iteration
Mark Thom [Tue, 6 Dec 2022 03:49:23 +0000 (20:49 -0700)]
new TermIterState variants
Mark Thom [Sun, 13 Nov 2022 17:13:37 +0000 (10:13 -0700)]
variable classification al a carte
Mark Thom [Wed, 2 Nov 2022 03:10:15 +0000 (21:10 -0600)]
add more variable probing, chunk type labeling
Mark Thom [Tue, 18 Oct 2022 04:56:08 +0000 (22:56 -0600)]
adapt code generation
Mark Thom [Tue, 4 Oct 2022 15:24:37 +0000 (09:24 -0600)]
add classifications and occurrence counting
Mark Thom [Wed, 28 Sep 2022 03:04:52 +0000 (21:04 -0600)]
milestone marker for surgery
Mark Thom [Thu, 1 Sep 2022 23:03:00 +0000 (17:03 -0600)]
begin adapting the techniques of "Compiling Large Disjunctions"
Mark [Tue, 25 Apr 2023 05:23:19 +0000 (23:23 -0600)]
fix current_predicate/1 (#1761)
Mark Thom [Sun, 23 Apr 2023 23:08:21 +0000 (17:08 -0600)]
Merge pull request #1794 from aarroyoc/uppercase-2
Fix to_upper/to_lower when string is instantiated
Adrián Arroyo Calle [Sat, 22 Apr 2023 08:54:35 +0000 (10:54 +0200)]
Fix to_upper/to_lower when string is instantiated
Mark Thom [Sun, 23 Apr 2023 16:31:40 +0000 (10:31 -0600)]
Merge pull request #1797 from triska/clpb_residuals
remove residual goal for ground BDD
Markus Triska [Sun, 23 Apr 2023 07:20:46 +0000 (09:20 +0200)]
remove residual goal for ground BDD
Example:
?- sat(X).
X = 1.
Mark [Sat, 22 Apr 2023 23:14:00 +0000 (17:14 -0600)]
discard CodeIndex literals from unfolded control operators in preprocessor (#1791)
Mark [Sat, 22 Apr 2023 23:13:24 +0000 (17:13 -0600)]
add and document inlined_instructions/2 to/in diag.pl (#1791)
Mark Thom [Sat, 22 Apr 2023 23:21:03 +0000 (17:21 -0600)]
Merge pull request #1796 from triska/dif_si
ADDED: dif_si/2
Markus Triska [Sat, 22 Apr 2023 22:37:03 +0000 (00:37 +0200)]
ADDED: dif_si/2
Source: https://stackoverflow.com/questions/
20223390 /prolog-a-person-is-a-sibling-of-himself
In Scryer Prolog, this is actually not needed, since Scryer Prolog provides
dif/2 in library(dif). However, it is still useful to provide dif_si/2 for two reasons:
1) to more easily port code from systems where only dif_si/2 is available
2) to provide correct disequality in other systems that adopt this library
Mark Thom [Sat, 22 Apr 2023 22:03:39 +0000 (16:03 -0600)]
Merge pull request #1795 from infogulch/fix-ci-install
Use --force to install cargo2junit
infogulch [Sat, 22 Apr 2023 20:42:10 +0000 (15:42 -0500)]
Use --force to install cargo2junit
This probably appeared now because it's the first time this tool was cached
from a previous run.
Mark Thom [Sat, 22 Apr 2023 17:26:45 +0000 (11:26 -0600)]
Merge pull request #1793 from infogulch/fix-action-ref
Change ref for `publish-unit-test-result-action`
infogulch [Sat, 22 Apr 2023 15:18:10 +0000 (10:18 -0500)]
Change ref for `publish-unit-test-result-action`
Mark Thom [Thu, 20 Apr 2023 05:17:09 +0000 (07:17 +0200)]
Merge pull request #1789 from aarroyoc/uppercase
library(charsio): add to_upper and to_lower
Adrián Arroyo Calle [Tue, 18 Apr 2023 16:48:59 +0000 (18:48 +0200)]
library(charsio): add to_upper and to_lower
Mark Thom [Tue, 18 Apr 2023 06:35:45 +0000 (08:35 +0200)]
Merge pull request #1783 from infogulch/test
Refactor CI Workflow
infogulch [Thu, 13 Apr 2023 00:15:06 +0000 (19:15 -0500)]
Refactor CI Workflow
* Rename the workflow from Test to CI, since it does more than tests
* Run logtalk tests in a separate job to improve isolation
* Publish all xunit/junit test files as build artifacts to be consumed
by a separate publishing workflow.
* Add "job summary" feature to show a formatted summary of the test
results on the job summary status page
* Run the CI job once every Wed to ensure that there are always some
recent builds on master that haven't expired.
Mark Thom [Fri, 14 Apr 2023 04:22:32 +0000 (06:22 +0200)]
Merge pull request #1785 from mthom/dependabot/cargo/h2-0.3.17
Bump h2 from 0.3.15 to 0.3.17
Mark Thom [Fri, 14 Apr 2023 04:22:18 +0000 (06:22 +0200)]
Merge pull request #1786 from triska/tuples_in
FIXED: propagation for ground tuples
Markus Triska [Thu, 13 Apr 2023 21:38:55 +0000 (23:38 +0200)]
FIXED: propagation for ground tuples
Example:
?- tuples_in([[A,A]],[[0,1],[2,0]]).
false.
See https://github.com/triska/clpz/issues/22.
dependabot[bot] [Thu, 13 Apr 2023 17:03:50 +0000 (17:03 +0000)]
Bump h2 from 0.3.15 to 0.3.17
Bumps [h2](https://github.com/hyperium/h2) from 0.3.15 to 0.3.17.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.15...v0.3.17)
---
updated-dependencies:
- dependency-name: h2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <[email protected] >
Mark Thom [Wed, 12 Apr 2023 17:10:50 +0000 (19:10 +0200)]
Merge pull request #1780 from triska/tuples_in
Various improvements to tuples_in/2
Markus Triska [Tue, 11 Apr 2023 20:31:09 +0000 (22:31 +0200)]
FIXED: enforce equality also for ground elements in tuples
Example:
?- tuples_in([[A,B]], [[1,2],[3,4]]),
tuples_in([[A,B]], [[3,2]]).
false.
See https://github.com/SWI-Prolog/swipl-devel/issues/1160.
Markus Triska [Tue, 11 Apr 2023 19:24:34 +0000 (21:24 +0200)]
do not create attributed variables for ground tuples
Markus Triska [Tue, 11 Apr 2023 19:19:10 +0000 (21:19 +0200)]
actually disable and reenable the queue
Markus Triska [Tue, 11 Apr 2023 19:16:02 +0000 (21:16 +0200)]
remove no longer needed clpz_relation attributes
Markus Triska [Tue, 11 Apr 2023 19:14:18 +0000 (21:14 +0200)]
do not leave an attribute when (re-)enabling a queue
Mark Thom [Fri, 7 Apr 2023 04:09:08 +0000 (06:09 +0200)]
Merge pull request #1776 from infogulch/master
Add iso prolog / logtalk tests to test runner
infogulch [Thu, 6 Apr 2023 14:40:03 +0000 (09:40 -0500)]
Allow the test suite to fail without failing the build
infogulch [Sun, 2 Apr 2023 20:47:02 +0000 (15:47 -0500)]
Add logtalk test suite
infogulch [Sun, 2 Apr 2023 19:47:52 +0000 (14:47 -0500)]
Test workflow cleanup; switch to macos-11
Mark Thom [Sun, 2 Apr 2023 17:24:59 +0000 (19:24 +0200)]
Merge pull request #1772 from triska/number_chars
FIXED: number_chars(N, "0' "), addressing #1580.
Mark Thom [Sun, 2 Apr 2023 17:24:36 +0000 (19:24 +0200)]
Merge pull request #1774 from infogulch/master
Optimize Test GH action
Markus Triska [Sat, 1 Apr 2023 18:29:02 +0000 (20:29 +0200)]
FIXED: number_chars(N, "0' "), addressing #1580.
There may be a more elegant way to solve this.
infogulch [Sat, 1 Apr 2023 23:11:35 +0000 (18:11 -0500)]
Add cache step to test workflow
Mark Thom [Sat, 1 Apr 2023 21:28:19 +0000 (23:28 +0200)]
Merge pull request #1770 from triska/doc
Smaller documentation improvements to explain compilation and target directory
Markus Triska [Sat, 1 Apr 2023 08:42:58 +0000 (10:42 +0200)]
DOC: link to "Indexing dif/2"
Markus Triska [Sat, 1 Apr 2023 08:42:13 +0000 (10:42 +0200)]
DOC: explain location of scryer-prolog after compilation
This question was recently raised on the #scryer IRC channel.
Markus Triska [Sat, 1 Apr 2023 08:59:32 +0000 (10:59 +0200)]
use the release flag so that the instructions can be used verbatim
Also, the location of the executable depends on this flag.
Markus Triska [Sat, 1 Apr 2023 08:50:32 +0000 (10:50 +0200)]
change "run" to "build", since "run" leads to a Scryer prompt which can be unexpected
Mark Thom [Fri, 31 Mar 2023 02:51:34 +0000 (04:51 +0200)]
Merge pull request #1769 from triska/show_pending_constraints
ENHANCED: use call_residue_vars/2 to show all pending constraints
Markus Triska [Thu, 30 Mar 2023 21:29:49 +0000 (23:29 +0200)]
ENHANCED: use call_residue_vars/2 to show all pending constraints
Example:
?- freeze(_, false).
freeze:freeze(_A,false).
This was originally added in
04ba9bc11af31780cd8fa259d78d151262c3c756 ,
then reverted, and is now restored.
Mark Thom [Sat, 25 Mar 2023 23:22:16 +0000 (17:22 -0600)]
broaden the definition of alpha_char! (#1749, #1515, #1591)
Mark Thom [Sat, 25 Mar 2023 05:20:00 +0000 (06:20 +0100)]
Merge pull request #1765 from mthom/dependabot/cargo/openssl-0.10.48
Bump openssl from 0.10.42 to 0.10.48
dependabot[bot] [Sat, 25 Mar 2023 01:27:40 +0000 (01:27 +0000)]
Bump openssl from 0.10.42 to 0.10.48
Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.42 to 0.10.48.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.42...openssl-v0.10.48)
---
updated-dependencies:
- dependency-name: openssl
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <[email protected] >
Mark Thom [Sun, 19 Mar 2023 05:08:09 +0000 (23:08 -0600)]
add '$unattributed_var' builtin (#1758)
Mark Thom [Thu, 16 Mar 2023 03:34:33 +0000 (04:34 +0100)]
Merge pull request #1759 from triska/better_queue
Better queue
Markus Triska [Wed, 15 Mar 2023 20:17:06 +0000 (21:17 +0100)]
remove no longer needed queue attributes after propagation
Markus Triska [Wed, 15 Mar 2023 18:56:02 +0000 (19:56 +0100)]
show remaining queue/2 attributes as residual goals
This lets us verify that all attributes are correctly removed earlier.
Mark Thom [Wed, 15 Mar 2023 03:34:49 +0000 (21:34 -0600)]
Revert "correct call_residue_vars/3 using new copy_term_3 (#1239)"
This reverts commit
9b35a316c9a01e7897490b58c222093959a21de4 .
Mark Thom [Wed, 15 Mar 2023 03:34:48 +0000 (21:34 -0600)]
Revert "use new call_residue_vars/2 in toplevel.pl (#847)"
This reverts commit
04ba9bc11af31780cd8fa259d78d151262c3c756 .
Mark Thom [Sun, 12 Mar 2023 22:59:03 +0000 (16:59 -0600)]
use new call_residue_vars/2 in toplevel.pl (#847)
Mark Thom [Sun, 12 Mar 2023 20:14:29 +0000 (14:14 -0600)]
correct call_residue_vars/3 using new copy_term_3 (#1239)
Mark Thom [Sun, 12 Mar 2023 17:26:54 +0000 (18:26 +0100)]
Merge pull request #1757 from aarroyoc/fix-docs-1756
DOCS: Fixes #1756
Adrián Arroyo Calle [Sun, 12 Mar 2023 15:47:20 +0000 (16:47 +0100)]
Fixes #1756
Mark Thom [Fri, 10 Mar 2023 01:40:29 +0000 (02:40 +0100)]
Merge pull request #1755 from triska/doc
various smaller documentation improvements
Markus Triska [Wed, 8 Mar 2023 22:35:11 +0000 (23:35 +0100)]
use actual toplevel answers
Markus Triska [Wed, 8 Mar 2023 22:32:05 +0000 (23:32 +0100)]
use string notation as discussed on #scryer IRC
Markus Triska [Wed, 8 Mar 2023 22:31:02 +0000 (23:31 +0100)]
items --> elements
This addresses #1740.
Mark Thom [Wed, 8 Mar 2023 20:48:34 +0000 (21:48 +0100)]
Merge pull request #1754 from triska/dif
ENHANCED: more compact definition of dif/2
Markus Triska [Wed, 8 Mar 2023 20:16:54 +0000 (21:16 +0100)]
FIXED: Take all variables into account during goal projection.
This addresses #1751.
Markus Triska [Wed, 8 Mar 2023 19:50:33 +0000 (20:50 +0100)]
ENHANCED: more compact definition of dif/2
As outlined in #1753.
Mark Thom [Thu, 2 Mar 2023 20:57:56 +0000 (21:57 +0100)]
Merge pull request #1744 from aarroyoc/ffi
Foreign Function Interface - library(ffi)
Adrián Arroyo Calle [Wed, 1 Mar 2023 21:10:26 +0000 (22:10 +0100)]
Fill more cases
Adrián Arroyo Calle [Tue, 28 Feb 2023 21:10:40 +0000 (22:10 +0100)]
Merge branch 'master' into ffi
Adrián Arroyo Calle [Mon, 27 Feb 2023 19:02:21 +0000 (20:02 +0100)]
FFI: Documentation