]> Repositorios git - scryer-prolog.git/log
scryer-prolog.git
2 years agofilter our builtins from current_predicate/1 (#153)
Mark [Tue, 26 Sep 2023 19:46:21 +0000 (13:46 -0600)]
filter our builtins from current_predicate/1 (#153)

2 years agocheck for predicate_indicator list and sequence types in add_predicate_declaration...
Mark [Tue, 26 Sep 2023 18:54:16 +0000 (12:54 -0600)]
check for predicate_indicator list and sequence types in add_predicate_declaration (#1586)

2 years agothrow instantiation_error when appropriate from parse_write_options_ (5.5.12 of the...
Mark [Tue, 26 Sep 2023 18:08:51 +0000 (12:08 -0600)]
throw instantiation_error when appropriate from parse_write_options_ (5.5.12 of the standard, #1965)

2 years agocorrect OutOfFiles resource error (#1375)
Mark [Tue, 26 Sep 2023 17:22:56 +0000 (11:22 -0600)]
correct OutOfFiles resource error (#1375)

2 years agoadd predicate indicator sequences to loader:add_predicate_declaration (#1586)
Mark [Tue, 26 Sep 2023 17:21:47 +0000 (11:21 -0600)]
add predicate indicator sequences to loader:add_predicate_declaration (#1586)

2 years agothrow an error instead of allowing builtin modules to be overwritten (#2042)
Mark [Tue, 26 Sep 2023 01:20:11 +0000 (19:20 -0600)]
throw an error instead of allowing builtin modules to be overwritten (#2042)

2 years agoMerge branch 'master' of ssh://github.com/mthom/scryer-prolog
Mark [Mon, 25 Sep 2023 22:09:20 +0000 (16:09 -0600)]
Merge branch 'master' of ssh://github.com/mthom/scryer-prolog

2 years agofix off-by-1 bug in '$skip_max_list'/4 (#2037)
Mark [Sun, 24 Sep 2023 00:32:32 +0000 (18:32 -0600)]
fix off-by-1 bug in '$skip_max_list'/4 (#2037)

2 years agoMerge pull request #2032 from bakaq/phrase_from_stream
Mark Thom [Mon, 25 Sep 2023 18:04:33 +0000 (12:04 -0600)]
Merge pull request #2032 from bakaq/phrase_from_stream

Add phrase_from_stream/2 to library(pio)

2 years agoRemove reposition option from phrase_from_file/2
bakaq [Mon, 25 Sep 2023 05:18:05 +0000 (02:18 -0300)]
Remove reposition option from phrase_from_file/2

2 years agoInline string_get_n_chars_/3
bakaq [Sun, 24 Sep 2023 22:29:51 +0000 (19:29 -0300)]
Inline string_get_n_chars_/3

2 years agoBetter string_get_n_chars_/3
bakaq [Sun, 24 Sep 2023 22:21:03 +0000 (19:21 -0300)]
Better string_get_n_chars_/3

2 years agoFixed bug with '$skip_max_list'/4
bakaq [Sun, 24 Sep 2023 18:07:39 +0000 (15:07 -0300)]
Fixed bug with '$skip_max_list'/4

2 years agoUse '$skip_max_list'/4 in string_get_n_chars/4
bakaq [Sat, 23 Sep 2023 04:43:45 +0000 (01:43 -0300)]
Use '$skip_max_list'/4 in string_get_n_chars/4

2 years agoAdd phrase_from_stream/2 to library(pio)
bakaq [Fri, 22 Sep 2023 00:06:02 +0000 (21:06 -0300)]
Add phrase_from_stream/2 to library(pio)

2 years agoMerge pull request #2040 from rujialiu/allow-cr
Mark Thom [Sun, 24 Sep 2023 17:11:15 +0000 (11:11 -0600)]
Merge pull request #2040 from rujialiu/allow-cr

Solves CRLF/CR issue by considering'\r' a `layout_char` #553 #2028

2 years agoSolves CRLF/CR issue by considering'\r' a `layout_char` #553 #2028
Rujia Liu [Sun, 24 Sep 2023 11:10:40 +0000 (19:10 +0800)]
Solves CRLF/CR issue by considering'\r' a `layout_char` #553 #2028

2 years agoMerge pull request #2038 from infogulch/patch-1
Mark Thom [Sun, 24 Sep 2023 06:44:33 +0000 (00:44 -0600)]
Merge pull request #2038 from infogulch/patch-1

Allow all matrix ci jobs to run to completion even if one fails

2 years agoAllow all jobs to run to completion even if one fails
Joe Taber [Sun, 24 Sep 2023 02:43:51 +0000 (21:43 -0500)]
Allow all jobs to run to completion even if one fails

See: https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstrategyfail-fast

2 years agofix off-by-1 bug in ''/4 (#2037)
Mark [Sun, 24 Sep 2023 00:32:32 +0000 (18:32 -0600)]
fix off-by-1 bug in ''/4 (#2037)

2 years agodon't parse bracketed non-operators as functor terms (#2033)
Mark [Sat, 23 Sep 2023 20:26:28 +0000 (14:26 -0600)]
don't parse bracketed non-operators as functor terms (#2033)

2 years agorecord compaction depth after reduce_op if '|' an operator (#1905)
Mark [Sat, 23 Sep 2023 06:19:54 +0000 (00:19 -0600)]
record compaction depth after reduce_op if '|' an operator (#1905)

2 years agoadd (now failing) test 317 to iso_conformity_tests.pl
Mark [Thu, 21 Sep 2023 22:49:45 +0000 (16:49 -0600)]
add (now failing) test 317 to iso_conformity_tests.pl

2 years agogeneralize multifile/dynamic/discontiguous declarations over lists of predicate indic...
Mark [Thu, 21 Sep 2023 22:22:41 +0000 (16:22 -0600)]
generalize multifile/dynamic/discontiguous declarations over lists of predicate indicators (#1586)

2 years agothrow resource error if OpenOptions raises an error of uncategorized kind (#1375)
Mark [Thu, 21 Sep 2023 20:36:53 +0000 (14:36 -0600)]
throw resource error if OpenOptions raises an error of uncategorized kind (#1375)

2 years agoMerge pull request #2027 from bakaq/dif
Mark Thom [Thu, 21 Sep 2023 17:32:38 +0000 (11:32 -0600)]
Merge pull request #2027 from bakaq/dif

Improvements to dif/2

2 years agoMerge pull request #2026 from infogulch/master
Mark Thom [Thu, 21 Sep 2023 17:31:35 +0000 (11:31 -0600)]
Merge pull request #2026 from infogulch/master

Simplify fn maybe

2 years agoAvoid dif/1 attribute with empty list
bakaq [Thu, 21 Sep 2023 17:00:37 +0000 (14:00 -0300)]
Avoid dif/1 attribute with empty list

Closes #1956

2 years agoRun dif tests on cargo test
bakaq [Thu, 21 Sep 2023 15:14:27 +0000 (12:14 -0300)]
Run dif tests on cargo test

2 years agoTests for dif/2
bakaq [Wed, 20 Sep 2023 23:56:25 +0000 (20:56 -0300)]
Tests for dif/2

2 years agoImproved dif/2
bakaq [Wed, 20 Sep 2023 23:56:04 +0000 (20:56 -0300)]
Improved dif/2

2 years agoSimplify maybe
infogulch [Wed, 20 Sep 2023 21:38:58 +0000 (16:38 -0500)]
Simplify maybe

Fix whitespace

2 years agoMerge pull request #2025 from aarroyoc/random-seed
Mark Thom [Wed, 20 Sep 2023 21:03:21 +0000 (15:03 -0600)]
Merge pull request #2025 from aarroyoc/random-seed

Use a SeedableRng to generate random numbers

2 years agoUse a SeedableRng to generate random numbers
Adrián Arroyo Calle [Wed, 20 Sep 2023 19:54:14 +0000 (21:54 +0200)]
Use a SeedableRng to generate random numbers

2 years agoremove unnecessary Result return type from read_term_from_heap
Mark [Fri, 15 Sep 2023 20:10:42 +0000 (14:10 -0600)]
remove unnecessary Result return type from read_term_from_heap

2 years agoMerge pull request #2018 from triska/libffi
Mark Thom [Wed, 13 Sep 2023 21:05:31 +0000 (15:05 -0600)]
Merge pull request #2018 from triska/libffi

use version from crates.io

2 years agouse version from crates.io
Markus Triska [Wed, 13 Sep 2023 18:45:38 +0000 (20:45 +0200)]
use version from crates.io

2 years agoMerge pull request #2017 from cmpute/master
Mark Thom [Wed, 13 Sep 2023 16:41:34 +0000 (10:41 -0600)]
Merge pull request #2017 from cmpute/master

Upgrade dashu and make the related code more idomatic.

2 years agoUpgrade dashu and some changes
Jacob [Wed, 13 Sep 2023 16:29:12 +0000 (12:29 -0400)]
Upgrade dashu and some changes

2 years agoupdate syn crates
Mark [Tue, 12 Sep 2023 20:52:42 +0000 (14:52 -0600)]
update syn crates

2 years agoget rid of OssifiedOpDir, DBRef, simplify current_op/3
Mark [Mon, 11 Sep 2023 21:36:15 +0000 (15:36 -0600)]
get rid of OssifiedOpDir, DBRef, simplify current_op/3

2 years agoMerge pull request #1993 from coasys/dashu-fixes
Mark Thom [Mon, 11 Sep 2023 17:33:16 +0000 (11:33 -0600)]
Merge pull request #1993 from coasys/dashu-fixes

Dashu fixes

2 years agoMerge pull request #2013 from gruhn/fix-docker-debian-bullseye
Mark Thom [Mon, 11 Sep 2023 17:23:10 +0000 (11:23 -0600)]
Merge pull request #2013 from gruhn/fix-docker-debian-bullseye

fix Docker image

2 years agofix Docker image
Niklas Gruhn [Sun, 10 Sep 2023 23:40:05 +0000 (01:40 +0200)]
fix Docker image

The Docker image is broken with the error message:

    scryer-prolog: error while loading shared libraries:
    libssl.so.1.1: cannot open shared object file: No such
    file or directory

We use the base base image `debian:stable-slim` and in the
background a new Debian version was marked stable (bookworm),
which has libssl3 instead of libssl1.1 installed.

I downgraded the base image to the previous stable version
(bullseye), which seems to fix the issue.

2 years agoMerge pull request #2010 from aarroyoc/update-website-0.9.2
Mark Thom [Sun, 10 Sep 2023 23:45:45 +0000 (17:45 -0600)]
Merge pull request #2010 from aarroyoc/update-website-0.9.2

Update INDEX.dj

2 years agoUpdate website to mention 0.9.2 and playground
Adrián Arroyo Calle [Sun, 10 Sep 2023 21:12:10 +0000 (23:12 +0200)]
Update website to mention 0.9.2 and playground

2 years agoMerge branch 'master' into dashu-fixes
Fayeed Pawaskar [Sun, 10 Sep 2023 16:21:02 +0000 (21:51 +0530)]
Merge branch 'master' into dashu-fixes

2 years agoRemoved value method and use deref to get type
Fayeed Pawaskar [Sun, 10 Sep 2023 16:10:22 +0000 (21:40 +0530)]
Removed value method and use deref to get type

2 years agoMerge pull request #2008 from triska/clpb_improvements
Mark Thom [Sat, 9 Sep 2023 06:40:30 +0000 (00:40 -0600)]
Merge pull request #2008 from triska/clpb_improvements

Various CLP(B) improvements

2 years agoremove code that is not needed in Scryer Prolog
Markus Triska [Sat, 9 Sep 2023 05:23:34 +0000 (07:23 +0200)]
remove code that is not needed in Scryer Prolog

2 years agoremove more attributes so that they do not appear in residual goals
Markus Triska [Fri, 8 Sep 2023 21:19:10 +0000 (23:19 +0200)]
remove more attributes so that they do not appear in residual goals

2 years agomove compatibility predicates and meta_predicate/1 declarations so that they are...
Markus Triska [Fri, 8 Sep 2023 21:12:33 +0000 (23:12 +0200)]
move compatibility predicates and meta_predicate/1 declarations so that they are correctly taken into account

2 years agoMerge pull request #2006 from infogulch/wasm-ci
Mark Thom [Sat, 9 Sep 2023 05:34:59 +0000 (23:34 -0600)]
Merge pull request #2006 from infogulch/wasm-ci

Add wasm build steps

2 years agoMerge pull request #2007 from triska/rust_1_70
Mark Thom [Sat, 9 Sep 2023 05:34:36 +0000 (23:34 -0600)]
Merge pull request #2007 from triska/rust_1_70

update required Rust version

2 years agoshorter partition/5, relying on first instantiated argument indexing
Markus Triska [Fri, 8 Sep 2023 20:47:59 +0000 (22:47 +0200)]
shorter partition/5, relying on first instantiated argument indexing

2 years agoadd meta_predicate/1 declaration for include/3 and exclude/3
Markus Triska [Fri, 8 Sep 2023 20:41:49 +0000 (22:41 +0200)]
add meta_predicate/1 declaration for include/3 and exclude/3

2 years agoshorter include/3 and exclude/3, relying on improved indexing
Markus Triska [Fri, 8 Sep 2023 20:40:50 +0000 (22:40 +0200)]
shorter include/3 and exclude/3, relying on improved indexing

2 years agoadd licensing information, addressing part of #1798
Markus Triska [Fri, 8 Sep 2023 20:37:18 +0000 (22:37 +0200)]
add licensing information, addressing part of #1798

2 years agoupdate required Rust version
Markus Triska [Sat, 9 Sep 2023 05:30:23 +0000 (07:30 +0200)]
update required Rust version

2 years agoAdd wasm build steps
Joe Taber [Sat, 9 Sep 2023 00:25:36 +0000 (19:25 -0500)]
Add wasm build steps

2 years agoMerge pull request #2004 from triska/generalize_description
Mark Thom [Fri, 8 Sep 2023 22:11:06 +0000 (16:11 -0600)]
Merge pull request #2004 from triska/generalize_description

this holds for all architectures (also 32-bit systems)

2 years agoMerge pull request #2003 from triska/clpz_comment
Mark Thom [Fri, 8 Sep 2023 21:22:49 +0000 (15:22 -0600)]
Merge pull request #2003 from triska/clpz_comment

update comment

2 years agothis holds for all architectures (also 32-bit systems)
Markus Triska [Fri, 8 Sep 2023 21:22:36 +0000 (23:22 +0200)]
this holds for all architectures (also 32-bit systems)

2 years agoupdate comment
Markus Triska [Fri, 8 Sep 2023 20:33:55 +0000 (22:33 +0200)]
update comment

2 years agoMerge pull request #1986 from rujialiu/wasm32-support
Mark Thom [Fri, 8 Sep 2023 17:15:51 +0000 (11:15 -0600)]
Merge pull request #1986 from rujialiu/wasm32-support

Basic WebAssembly support with minimal Javascript API #615

2 years agoBasic WebAssembly support with minimal Javascript API #615. Currently 6/12 crypto...
Rujia Liu [Fri, 8 Sep 2023 09:27:22 +0000 (17:27 +0800)]
Basic WebAssembly support with minimal Javascript API #615. Currently 6/12 crypto functions supported. Tested in browser with all default features disabled.

2 years agocheck atom == ',' in ambiguity_check mirroring logic in print_op_addendum (#2000)
Mark [Tue, 5 Sep 2023 20:56:26 +0000 (14:56 -0600)]
check atom == ',' in ambiguity_check mirroring logic in print_op_addendum (#2000)

2 years agoremove error printing redundancy and inconsistent state resulting from file_load_clea...
Mark [Tue, 5 Sep 2023 19:52:18 +0000 (13:52 -0600)]
remove error printing redundancy and inconsistent state resulting from file_load_cleanup (#1995)

2 years agoMerge pull request #1980 from Skgland/atomtable
Mark Thom [Tue, 5 Sep 2023 18:32:20 +0000 (12:32 -0600)]
Merge pull request #1980 from Skgland/atomtable

make AtomTable consurrency safe

2 years agoMerge pull request #1997 from triska/countall
Mark Thom [Tue, 5 Sep 2023 18:04:52 +0000 (12:04 -0600)]
Merge pull request #1997 from triska/countall

Corrections to countall/2

2 years agocall_with_inference_limit/3 should fail if inference limit is exceeded and R term...
Mark [Tue, 5 Sep 2023 17:51:06 +0000 (11:51 -0600)]
call_with_inference_limit/3 should fail if inference limit is exceeded and R term is not inference_limit_exceeded (#1977)

2 years agoFIXED: documentation of countall/2 (#1976)
Markus Triska [Tue, 5 Sep 2023 17:42:55 +0000 (19:42 +0200)]
FIXED: documentation of countall/2 (#1976)

2 years agomake F64Table concurency safe
Bennet Bleßmann [Sat, 2 Sep 2023 20:27:43 +0000 (22:27 +0200)]
make F64Table concurency safe

2 years agoremove locks from AtomTable
Bennet Bleßmann [Sat, 2 Sep 2023 19:31:01 +0000 (21:31 +0200)]
remove locks from AtomTable

there are technically still two locks
- the Mutex to serialize consurrent updates to the AtomTable
- the RwLock as part of GLOBAL_ATOM_TABLE

the former is the age lock of RESIZE ATOM TABLE in <https://arxiv.org/pdf/1608.00989.pdf>, though we use it for the whole update as we don't match the whole structure and can't reserve an atom slot as is, so we need to also lock concurrent updates without resizing

the later should be uncontendet as we only write AtomTable::new iff the current value is a dangling Weak

2 years ago[WIP] move towards lockless AtomTable
Bennet Bleßmann [Mon, 28 Aug 2023 21:24:27 +0000 (23:24 +0200)]
[WIP] move towards lockless AtomTable

2 years agoFIXED: countall/2 for zero solutions (#1996)
Markus Triska [Tue, 5 Sep 2023 17:39:05 +0000 (19:39 +0200)]
FIXED: countall/2 for zero solutions (#1996)

Example:

    ?- countall(false, 0).
       true.

2 years agofix `rust_beta_channel` feature
Skgland [Sun, 27 Aug 2023 20:23:22 +0000 (22:23 +0200)]
fix `rust_beta_channel` feature

2 years agofix accidentally left in println!()
Skgland [Sun, 27 Aug 2023 20:22:59 +0000 (22:22 +0200)]
fix accidentally left in println!()

2 years agoraise msrv for OnceLock support
Skgland [Sun, 27 Aug 2023 18:05:12 +0000 (20:05 +0200)]
raise msrv for OnceLock support

2 years agoadd comment why blocking_write is not used
Skgland [Sun, 27 Aug 2023 17:58:08 +0000 (19:58 +0200)]
add comment why blocking_write is not used

2 years agofix deadlock in `load_library_as_stream`
Skgland [Sun, 27 Aug 2023 17:56:55 +0000 (19:56 +0200)]
fix deadlock in `load_library_as_stream`

2 years ago[WIP] fix deadlock in AtomTable::build_with
Bennet Bleßmann [Mon, 28 Aug 2023 21:04:30 +0000 (23:04 +0200)]
[WIP] fix deadlock in AtomTable::build_with

2 years ago[WIP] make AtomTable concurrentcy ready
Skgland [Fri, 25 Aug 2023 23:10:49 +0000 (01:10 +0200)]
[WIP] make AtomTable concurrentcy ready

2 years agorun cargo fmt
Skgland [Fri, 25 Aug 2023 23:29:53 +0000 (01:29 +0200)]
run cargo fmt

2 years agocorrect inference counting over index backtracking, built-ins (#1977, #1987)
Mark [Mon, 4 Sep 2023 23:15:05 +0000 (17:15 -0600)]
correct inference counting over index backtracking, built-ins (#1977, #1987)

2 years agoImplemented num_order methods on Integer & Rational numbers
Fayeed Pawaskar [Mon, 4 Sep 2023 08:42:47 +0000 (14:12 +0530)]
Implemented num_order methods on Integer & Rational numbers

2 years agoAdded new unify methods
Fayeed Pawaskar [Mon, 4 Sep 2023 08:42:11 +0000 (14:12 +0530)]
Added new unify methods

2 years agoFixed warning
Fayeed Pawaskar [Mon, 4 Sep 2023 08:41:54 +0000 (14:11 +0530)]
Fixed warning

2 years agoAdded value method to get the generic type from TypedArenaPtr
Fayeed Pawaskar [Mon, 4 Sep 2023 08:41:30 +0000 (14:11 +0530)]
Added value method to get the generic type from TypedArenaPtr

2 years agoAdded latest dashu from github
Fayeed Pawaskar [Mon, 4 Sep 2023 08:39:45 +0000 (14:09 +0530)]
Added latest dashu from github

2 years agoMerge pull request #1991 from triska/discoverable_flags
Mark Thom [Mon, 4 Sep 2023 00:39:24 +0000 (18:39 -0600)]
Merge pull request #1991 from triska/discoverable_flags

FIXED: make occurs_check and answer_write_options flags discoverable

2 years agoMerge pull request #1990 from triska/clpb_max
Mark Thom [Mon, 4 Sep 2023 00:39:12 +0000 (18:39 -0600)]
Merge pull request #1990 from triska/clpb_max

remove clpb_max/1 attribute for residual goal projection

2 years agoFIXED: make occurs_check and answer_write_options flags discoverable
Markus Triska [Sun, 3 Sep 2023 22:49:40 +0000 (00:49 +0200)]
FIXED: make occurs_check and answer_write_options flags discoverable

Quoting from 7.11 Flags:

   NOTE - A built-in predicate current_prolog_flag(Flag, Value)
   (8.17.2) enables a program to discover all the flags supported
   by a processor and their current values.

2 years agoupdate answer
Markus Triska [Sun, 3 Sep 2023 20:01:38 +0000 (22:01 +0200)]
update answer

2 years agountabify
Markus Triska [Sun, 3 Sep 2023 19:57:51 +0000 (21:57 +0200)]
untabify

2 years agoremove clpb_max/1 attribute for residual goal projection
Markus Triska [Sun, 3 Sep 2023 19:47:58 +0000 (21:47 +0200)]
remove clpb_max/1 attribute for residual goal projection

Example:

    ?- sat(A+B), weighted_maximum([1,1], [A,B], Max).
       A = 1, B = 1, Max = 2.

2 years agoMerge pull request #1988 from triska/answer_write_options
Mark Thom [Sun, 3 Sep 2023 17:36:40 +0000 (11:36 -0600)]
Merge pull request #1988 from triska/answer_write_options

ADDED: New Prolog flag, answer_write_options.

2 years agoMerge pull request #1989 from triska/mention_binaries
Mark Thom [Sun, 3 Sep 2023 17:36:07 +0000 (11:36 -0600)]
Merge pull request #1989 from triska/mention_binaries

mention precompiled binaries

2 years agomention precompiled binaries
Markus Triska [Sun, 3 Sep 2023 12:12:46 +0000 (14:12 +0200)]
mention precompiled binaries

2 years agoADDED: New Prolog flag, answer_write_options.
Markus Triska [Sun, 3 Sep 2023 07:33:16 +0000 (09:33 +0200)]
ADDED: New Prolog flag, answer_write_options.

This lets us specify additional write options used by the top level
for writing answers.