]> Repositorios git - scryer-prolog.git/log
scryer-prolog.git
6 years agoRemoved predicate mediants/2 and added stern_brocot/3
notoria [Wed, 29 Apr 2020 12:18:20 +0000 (14:18 +0200)]
Removed predicate mediants/2 and added stern_brocot/3

6 years agoImplemented predicate mediants/2 with Stern-Brocot tree
notoria [Wed, 29 Apr 2020 00:44:13 +0000 (02:44 +0200)]
Implemented predicate mediants/2 with Stern-Brocot tree

6 years agocheck that lower bound on term expansion drain is below the len of the term expansion...
Mark Thom [Wed, 29 Apr 2020 01:22:20 +0000 (19:22 -0600)]
check that lower bound on term expansion drain is below the len of the term expansion vector, queue (#416)

6 years agoprint rational numbers using the rdiv operator when defined (#413)
Mark Thom [Wed, 29 Apr 2020 00:03:04 +0000 (18:03 -0600)]
print rational numbers using the rdiv operator when defined (#413)

6 years agoMerge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Tue, 28 Apr 2020 23:20:25 +0000 (17:20 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam

6 years agodo length check in PartialString::range_from (#412)
Mark Thom [Tue, 28 Apr 2020 23:20:14 +0000 (17:20 -0600)]
do length check in PartialString::range_from (#412)

6 years agoMerge pull request #414 from triska/master
Mark Thom [Tue, 28 Apr 2020 19:54:39 +0000 (16:54 -0300)]
Merge pull request #414 from triska/master

Small corrections, additions and improvements

6 years agomention portray_clause/1 and listing/1
Markus Triska [Tue, 28 Apr 2020 16:27:46 +0000 (18:27 +0200)]
mention portray_clause/1 and listing/1

6 years agomention backtrackable and non-backtrackable global variables
Markus Triska [Tue, 28 Apr 2020 16:22:18 +0000 (18:22 +0200)]
mention backtrackable and non-backtrackable global variables

6 years agouse new nth0/3 from library(lists)
Markus Triska [Tue, 28 Apr 2020 15:52:29 +0000 (17:52 +0200)]
use new nth0/3 from library(lists)

6 years agouse singleton variable, correct a mistake in maplist/8
Markus Triska [Tue, 28 Apr 2020 15:51:37 +0000 (17:51 +0200)]
use singleton variable, correct a mistake in maplist/8

6 years agoADDED: nth0/3, relating indices to list elements
Markus Triska [Tue, 28 Apr 2020 15:42:12 +0000 (17:42 +0200)]
ADDED: nth0/3, relating indices to list elements

6 years agosmall typographic corrections
Markus Triska [Tue, 28 Apr 2020 15:35:53 +0000 (17:35 +0200)]
small typographic corrections

6 years agouse new predicates from library(error) to throw type and domain errors
Markus Triska [Tue, 28 Apr 2020 15:34:56 +0000 (17:34 +0200)]
use new predicates from library(error) to throw type and domain errors

6 years agoMerge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Tue, 28 Apr 2020 07:41:11 +0000 (01:41 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam

6 years agoerase unnecessary stub from block of FileToChars
Mark Thom [Tue, 28 Apr 2020 07:40:59 +0000 (01:40 -0600)]
erase unnecessary stub from block of FileToChars

6 years agodon't append lists of attributes when binding attributed variables (#353)
Mark Thom [Tue, 28 Apr 2020 07:40:11 +0000 (01:40 -0600)]
don't append lists of attributes when binding attributed variables (#353)

6 years agomodify domain.pl example (#347)
Mark Thom [Tue, 28 Apr 2020 07:39:34 +0000 (01:39 -0600)]
modify domain.pl example (#347)

6 years agoMerge pull request #409 from triska/clp
Mark Thom [Mon, 27 Apr 2020 18:05:15 +0000 (15:05 -0300)]
Merge pull request #409 from triska/clp

add more information about Constraint Logic Programming (CLP)

6 years ago`if_` --> `if_/3`
Markus Triska [Mon, 27 Apr 2020 17:53:25 +0000 (19:53 +0200)]
`if_` --> `if_/3`

6 years agoadd more information about Constraint Logic Programming (CLP)
Markus Triska [Mon, 27 Apr 2020 17:48:31 +0000 (19:48 +0200)]
add more information about Constraint Logic Programming (CLP)

6 years agoMerge pull request #408 from triska/master
Mark Thom [Mon, 27 Apr 2020 17:35:17 +0000 (14:35 -0300)]
Merge pull request #408 from triska/master

Introduce and use new predicates for throwing ISO errors

6 years agoinclude the new library(random) in the overview
Markus Triska [Mon, 27 Apr 2020 15:56:46 +0000 (17:56 +0200)]
include the new library(random) in the overview

Many thanks to @notoria for this contribution!

6 years agouse new predicates from library(error)
Markus Triska [Mon, 27 Apr 2020 15:42:05 +0000 (17:42 +0200)]
use new predicates from library(error)

6 years agoADDED: library(error): instantiation_error/1, domain_error/3, type_error/3
Markus Triska [Mon, 27 Apr 2020 15:34:47 +0000 (17:34 +0200)]
ADDED: library(error): instantiation_error/1, domain_error/3, type_error/3

These predicates simplify throwing ISO errors.

6 years agoinclude usage advice about probabilistic predicates
Markus Triska [Mon, 27 Apr 2020 15:32:06 +0000 (17:32 +0200)]
include usage advice about probabilistic predicates

6 years agoMerge pull request #406 from notoria/random
Mark Thom [Mon, 27 Apr 2020 12:14:01 +0000 (09:14 -0300)]
Merge pull request #406 from notoria/random

Created the library random and updated library clpb

6 years agopublish bimetatrans_ruleml_tests, move both files to own directory
Mark Thom [Mon, 27 Apr 2020 02:32:16 +0000 (20:32 -0600)]
publish bimetatrans_ruleml_tests, move both files to own directory

6 years agoMerge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Mon, 27 Apr 2020 02:15:27 +0000 (20:15 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam

6 years agoAdded predicate random_integer and updated clpb
notoria [Sun, 26 Apr 2020 23:52:19 +0000 (01:52 +0200)]
Added predicate random_integer and updated clpb

6 years agoCreated the library random and moved some predicates from iso_ext
notoria [Sun, 26 Apr 2020 21:33:10 +0000 (23:33 +0200)]
Created the library random and moved some predicates from iso_ext

6 years agoMerge pull request #405 from triska/master
Mark Thom [Sun, 26 Apr 2020 20:20:58 +0000 (17:20 -0300)]
Merge pull request #405 from triska/master

Two small documentation additions

6 years agoadd library(cont) to the list
Markus Triska [Sun, 26 Apr 2020 19:38:18 +0000 (21:38 +0200)]
add library(cont) to the list

6 years agoadd more information about tabling
Markus Triska [Sun, 26 Apr 2020 19:37:24 +0000 (21:37 +0200)]
add more information about tabling

6 years agoMerge pull request #402 from notoria/pio
Mark Thom [Sun, 26 Apr 2020 15:17:09 +0000 (12:17 -0300)]
Merge pull request #402 from notoria/pio

Small patch for library pio

6 years agoSmall patch for library pio
notoria [Sun, 26 Apr 2020 12:54:20 +0000 (14:54 +0200)]
Small patch for library pio

6 years agoMerge pull request #399 from notoria/debug
Mark Thom [Sun, 26 Apr 2020 02:35:27 +0000 (23:35 -0300)]
Merge pull request #399 from notoria/debug

Implemented the Debug trait for all data structures

6 years agoImplemented the Debug trait for all data structures
notoria [Sun, 26 Apr 2020 00:18:45 +0000 (02:18 +0200)]
Implemented the Debug trait for all data structures

6 years agoMerge pull request #398 from triska/master
Mark Thom [Sat, 25 Apr 2020 20:20:24 +0000 (17:20 -0300)]
Merge pull request #398 from triska/master

Several smaller improvements

6 years agouse proper module name in bimetatrans_ruleml
Mark Thom [Sat, 25 Apr 2020 18:55:36 +0000 (12:55 -0600)]
use proper module name in bimetatrans_ruleml

6 years agoinclude library(pio) and library(charsio) in the description
Markus Triska [Sat, 25 Apr 2020 18:08:56 +0000 (20:08 +0200)]
include library(pio) and library(charsio) in the description

6 years agoupdate toplevel interaction
Markus Triska [Sat, 25 Apr 2020 18:01:04 +0000 (20:01 +0200)]
update toplevel interaction

6 years agoENHANCED: Throw domain errors in char_type/2 for wrong types
Markus Triska [Sat, 25 Apr 2020 17:59:12 +0000 (19:59 +0200)]
ENHANCED: Throw domain errors in char_type/2 for wrong types

This is especially important because a few of our names diverge from
ctype(3), and we better inform programmers when the type they are
using is not available at all.

6 years agouse an anonymous variable
Markus Triska [Sat, 25 Apr 2020 17:59:38 +0000 (19:59 +0200)]
use an anonymous variable

6 years agoMerge pull request #396 from notoria/phrase_from_file
Mark Thom [Sat, 25 Apr 2020 17:17:24 +0000 (14:17 -0300)]
Merge pull request #396 from notoria/phrase_from_file

Implemented phrase_from_file/2 and /2

6 years agoNo trimming of the buffer
notoria [Sat, 25 Apr 2020 16:20:20 +0000 (18:20 +0200)]
No trimming of the buffer

6 years agoImplemented phrase_from_file/2 and /2
notoria [Sat, 25 Apr 2020 16:00:16 +0000 (18:00 +0200)]
Implemented phrase_from_file/2 and /2

6 years agoMerge pull request #391 from notoria/msb_lsb2
Mark Thom [Sat, 25 Apr 2020 15:58:03 +0000 (12:58 -0300)]
Merge pull request #391 from notoria/msb_lsb2

Implemented lsb/2 and msb/2

6 years agoImplemented lsb/2 and msb/2
notoria [Fri, 24 Apr 2020 20:47:24 +0000 (22:47 +0200)]
Implemented lsb/2 and msb/2

6 years agoMerge pull request #380 from notoria/char_type
Mark Thom [Fri, 24 Apr 2020 00:57:03 +0000 (21:57 -0300)]
Merge pull request #380 from notoria/char_type

Implementation of the predicate char_type for a subset

6 years agoImplementation of the predicate char_type for a subset
notoria [Wed, 22 Apr 2020 18:44:10 +0000 (20:44 +0200)]
Implementation of the predicate char_type for a subset

6 years agoDraft of an implementation of char_type
notoria [Tue, 21 Apr 2020 22:46:54 +0000 (00:46 +0200)]
Draft of an implementation of char_type

6 years agoMerge pull request #381 from triska/master
Mark Thom [Wed, 22 Apr 2020 00:16:40 +0000 (21:16 -0300)]
Merge pull request #381 from triska/master

ADDED: library(format) now provides a rudimentary version of listing/1

6 years agoADDED: library(format) now provides a rudimentary version of listing/1
Markus Triska [Tue, 21 Apr 2020 23:53:20 +0000 (01:53 +0200)]
ADDED: library(format) now provides a rudimentary version of listing/1

Example:

    :- dynamic(a/1).

    a(X) :- X = true, b(X).

Yielding:

    ?- listing(a/1).
    %@ a(A) :-
    %@    A=true,
    %@    b(A).
    %@    true.

listing/1 only works for predicates and DCGs that are declared dynamic/1.

6 years agoMerge pull request #377 from triska/master
Mark Thom [Mon, 20 Apr 2020 22:16:12 +0000 (19:16 -0300)]
Merge pull request #377 from triska/master

portray_clause/1 now correctly tracks variable names (#376)

6 years agoportray_clause/1 now correctly tracks variable names (#376)
Markus Triska [Mon, 20 Apr 2020 20:53:15 +0000 (22:53 +0200)]
portray_clause/1 now correctly tracks variable names (#376)

Example:

    ?- portray_clause((A :- B)).
    %@ A :-
    %@    B.
    %@    true
    %@ ;  ...

Also, change the indentation from 8 to 3 at the express request of @UWN.

6 years agoMerge pull request #375 from notoria/sleep
Mark Thom [Mon, 20 Apr 2020 14:52:25 +0000 (11:52 -0300)]
Merge pull request #375 from notoria/sleep

Changed the error being thrown by sleep/1

6 years agospeed unification of pairs of partial strings
Mark Thom [Mon, 20 Apr 2020 17:37:32 +0000 (11:37 -0600)]
speed unification of pairs of partial strings

6 years agochange CPU_now to CpuNow
Mark Thom [Mon, 20 Apr 2020 16:37:00 +0000 (10:37 -0600)]
change CPU_now to CpuNow

6 years agocheck for num in comparisons, bump num-rug-adapter to 0.1.3
Mark Thom [Mon, 20 Apr 2020 16:35:30 +0000 (10:35 -0600)]
check for num in comparisons, bump num-rug-adapter to 0.1.3

6 years agoCorrected the error being thrown by sleep/1
notoria [Mon, 20 Apr 2020 14:34:56 +0000 (16:34 +0200)]
Corrected the error being thrown by sleep/1

6 years agoChanged the error being thrown by sleep/1
notoria [Mon, 20 Apr 2020 09:27:28 +0000 (11:27 +0200)]
Changed the error being thrown by sleep/1

6 years agoMerge pull request #371 from notoria/sleep
Mark Thom [Mon, 20 Apr 2020 00:41:33 +0000 (21:41 -0300)]
Merge pull request #371 from notoria/sleep

Added the sleep predicate

6 years agodo casts between different arithmetic types for comparison and equality (#372)
Mark Thom [Mon, 20 Apr 2020 03:34:59 +0000 (21:34 -0600)]
do casts between different arithmetic types for comparison and equality (#372)

6 years agospeed comparisons of partial strings
Mark Thom [Mon, 20 Apr 2020 02:58:53 +0000 (20:58 -0600)]
speed comparisons of partial strings

6 years agouse default machine policies in term expansions
Mark Thom [Mon, 20 Apr 2020 01:54:23 +0000 (19:54 -0600)]
use default machine policies in term expansions

6 years agoMerge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Sun, 19 Apr 2020 22:43:32 +0000 (16:43 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam

6 years agoupdate toplevel comments, add mutable stack to zipped acyclic iterators
Mark Thom [Sun, 19 Apr 2020 22:01:35 +0000 (16:01 -0600)]
update toplevel comments, add mutable stack to zipped acyclic iterators

6 years agoUndo a workaround
notoria [Sun, 19 Apr 2020 21:26:16 +0000 (23:26 +0200)]
Undo a workaround

6 years agoCorrected bound
notoria [Sun, 19 Apr 2020 21:04:51 +0000 (23:04 +0200)]
Corrected bound

6 years agoMerge pull request #3 from triska/sleep
notoria [Sun, 19 Apr 2020 20:44:48 +0000 (22:44 +0200)]
Merge pull request #3 from triska/sleep

update comment

6 years agoThrown an error if T < 0 or T > 0xfffffffffffffbff in sleep(T)
notoria [Sun, 19 Apr 2020 20:43:13 +0000 (22:43 +0200)]
Thrown an error if T < 0 or T > 0xfffffffffffffbff in sleep(T)

6 years agoupdate comment
Markus Triska [Sun, 19 Apr 2020 20:36:27 +0000 (22:36 +0200)]
update comment

6 years agoAdded the sleep predicate
notoria [Sun, 19 Apr 2020 19:35:49 +0000 (21:35 +0200)]
Added the sleep predicate

6 years agoMerge pull request #370 from triska/master
Mark Thom [Sun, 19 Apr 2020 19:33:51 +0000 (16:33 -0300)]
Merge pull request #370 from triska/master

ENHANCED: time(Goal) now also reports the time if Goal fails

6 years agoENHANCED: time(Goal) now also reports the time if Goal fails
Markus Triska [Sun, 19 Apr 2020 19:13:15 +0000 (21:13 +0200)]
ENHANCED: time(Goal) now also reports the time if Goal fails

6 years agoMerge pull request #367 from triska/master
Mark Thom [Sun, 19 Apr 2020 17:29:09 +0000 (14:29 -0300)]
Merge pull request #367 from triska/master

ADDED: library(time), providing time/1 for benchmarking

6 years agoMerge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Sun, 19 Apr 2020 18:58:54 +0000 (12:58 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam

6 years agothrow '' whenever an interrupt is made (#365, #366)
Mark Thom [Sun, 19 Apr 2020 18:58:44 +0000 (12:58 -0600)]
throw '' whenever an interrupt is made (#365, #366)

6 years agoadd entry for time/1
Markus Triska [Sun, 19 Apr 2020 17:24:22 +0000 (19:24 +0200)]
add entry for time/1

6 years agoupdate answer to use the latest toplevel improvements
Markus Triska [Sun, 19 Apr 2020 17:17:00 +0000 (19:17 +0200)]
update answer to use the latest toplevel improvements

6 years agoADDED: library(time), providing time/1 for benchmarking
Markus Triska [Sun, 19 Apr 2020 17:13:27 +0000 (19:13 +0200)]
ADDED: library(time), providing time/1 for benchmarking

sleep/1 and predicates for reasoning about time stamps should also
be added to this library.

6 years agoMerge pull request #364 from triska/master
Mark Thom [Sun, 19 Apr 2020 01:54:17 +0000 (22:54 -0300)]
Merge pull request #364 from triska/master

Documentation addition, and correction of error term

6 years agoRestore the type_error, which was implemented correctly by @notoria.
Markus Triska [Sun, 19 Apr 2020 00:12:01 +0000 (02:12 +0200)]
Restore the type_error, which was implemented correctly by @notoria.

This corrects f28e87b2401960e3b31bea114318e2b3ef1616d3:
in_character is a valid type by 7.12.2 Error classification!

6 years agodocument ~| format modifier to place a tab stop at this position
Markus Triska [Sat, 18 Apr 2020 23:59:16 +0000 (01:59 +0200)]
document ~| format modifier to place a tab stop at this position

This works best when used in tandem with ~N+, since it is currently
equivalent to ~0| and does not take the actual text position into account.
However, when using relative positions, this works as intended.

6 years agoMerge pull request #363 from triska/master
Mark Thom [Sat, 18 Apr 2020 23:37:32 +0000 (20:37 -0300)]
Merge pull request #363 from triska/master

Delay toplevel output until after the goal succeeds

6 years agoremove SCCCutPolicy panic, revise (;)/2 so that comma'ed cuts are handled properly...
Mark Thom [Sun, 19 Apr 2020 02:10:53 +0000 (20:10 -0600)]
remove SCCCutPolicy panic, revise (;)/2 so that comma'ed cuts are handled properly (#361)

6 years agodrop $ naming convention inside '' when unnecessary
Mark Thom [Sun, 19 Apr 2020 02:06:52 +0000 (20:06 -0600)]
drop $ naming convention inside '' when unnecessary

6 years agouse correct signs in fixnum remainders
Mark Thom [Sat, 18 Apr 2020 23:37:54 +0000 (17:37 -0600)]
use correct signs in fixnum remainders

6 years agouse the most recent improvements
Markus Triska [Sat, 18 Apr 2020 23:30:56 +0000 (01:30 +0200)]
use the most recent improvements

6 years agoENHANCED: Delay toplevel output until after the goal succeeds.
Markus Triska [Sat, 18 Apr 2020 23:28:50 +0000 (01:28 +0200)]
ENHANCED: Delay toplevel output until after the goal succeeds.

This is to accommodate goals that are used for their side-effects,
when we are interested in their output.

Examples:

    ?- portray_clause((a :- a)).
    a :-
            a.
       true
    ;  false.

    ?- format("hello~w~n", [!]).
    hello!
       true
    ;  false.

6 years agoadd domain and type errors for compare/3 (#296)
Mark Thom [Sat, 18 Apr 2020 20:37:14 +0000 (14:37 -0600)]
add domain and type errors for compare/3 (#296)

6 years agoMerge branch 'master' of https://github.com/mthom/rusty-wam
Mark Thom [Sat, 18 Apr 2020 20:17:13 +0000 (14:17 -0600)]
Merge branch 'master' of https://github.com/mthom/rusty-wam

6 years agoreintroduce "n" as a synonym for ";" and " "
Markus Triska [Sat, 18 Apr 2020 16:08:08 +0000 (18:08 +0200)]
reintroduce "n" as a synonym for ";" and " "

6 years agoENHANCED: the toplevel interaction now supports RETURN as a synonym for "."
Markus Triska [Sat, 18 Apr 2020 15:47:24 +0000 (17:47 +0200)]
ENHANCED: the toplevel interaction now supports RETURN as a synonym for "."

This is made possible due to the recent improvements by @notoria.

6 years agosmall simplifications
Markus Triska [Sat, 18 Apr 2020 15:40:19 +0000 (17:40 +0200)]
small simplifications

6 years agoRemoved a check in get_single_char
notoria [Sat, 18 Apr 2020 16:28:26 +0000 (18:28 +0200)]
Removed a check in get_single_char

6 years agoAdded Space for continuation
notoria [Sat, 18 Apr 2020 14:57:45 +0000 (16:57 +0200)]
Added Space for continuation

6 years agoFixed the predicate name when error is thrown
notoria [Sat, 18 Apr 2020 13:21:19 +0000 (15:21 +0200)]
Fixed the predicate name when error is thrown

6 years agoinstead of a type error, use a domain error
Markus Triska [Sat, 18 Apr 2020 12:38:03 +0000 (14:38 +0200)]
instead of a type error, use a domain error

The preceding use of atom_length/2 already ensures that C has the
correct type (i.e., atom). However, its domain may still be wrong,
if its length is greater than 1.