Markus Triska
1fa8a0a969
ENHANCED: more memory efficient call_nth/2 ( #1264 )
...
I hope that this will allow more extensive tests of Scryer Prolog. Enjoy!
2022-04-02 17:42:45 +02:00
Markus Triska
f7e31fceac
as --> is
2022-03-30 21:33:46 +02:00
Adrián Arroyo Calle
6798b22b49
http_open/3 with headers and data
2022-03-28 20:38:55 +02:00
Adrián Arroyo Calle
3acbe2a418
http_open/3 with method option
2022-03-28 20:38:52 +02:00
Markus Triska
1a7992e524
ENHANCED: use newly available must_be(chars, ...), which is very fast
2022-03-26 19:09:54 +01:00
Mark Thom
895b02b641
improve length/2 ( #1325 )
2022-03-15 18:43:57 -06:00
Markus Triska
69e52d1ed8
ENHANCED: call_nth(Goal, 0) now fails, correct error for N < 0.
...
This addresses #1307 .
2022-03-07 23:38:30 +01:00
Paulo Moura
0532f51cc2
Fix querying the values of the bounded and max_arity flags
2022-03-07 00:30:35 +00:00
Paulo Moura
495168e7bb
Fix halt/1 built-in predicate for ISO Prolog Core standard compliance
2022-03-06 21:33:49 +00:00
Markus Triska
c6264cf098
ADDED: library(simplex), for solving linear programming problems.
2022-03-06 21:49:52 +01:00
Mark Thom
2d19243b3b
Merge branch 'rebis-dev' into 0.9.0 release
Test / build (macos-10.15, beta) (push) Has been cancelled
Test / build (macos-10.15, stable) (push) Has been cancelled
Test / build (ubuntu-20.04, beta) (push) Has been cancelled
Test / build (ubuntu-20.04, stable) (push) Has been cancelled
2022-03-06 09:45:05 -07:00
Mark Thom
0c19c56909
mark variables in ArithmeticEvaluator ( #690 )
2022-03-05 17:57:10 -07:00
Mark Thom
de35baadf3
use must_be(chars) in read_from_chars/2 ( #1305 )
2022-03-05 17:39:13 -07:00
Mark Thom
d7a3ed2d4a
change domain_error(integer, ..) to type_error(integer, ..) in random.pl ( #1310 )
2022-03-05 17:39:13 -07:00
Mark Thom
d4d135f2a9
fix unexpected error in length/2 ( #1303 )
2022-02-27 11:38:48 -07:00
Mark Thom
96faad1c01
add proper error throwing for call_with_inference_limit/3 ( #1296 )
2022-02-27 11:38:44 -07:00
Markus Triska
8fb673e93e
use newly available get_n_chars/3 from library(charsio)
2022-02-23 00:03:36 +01:00
Mark Thom
55d8de1b23
delay callable errors in control predicates ( #1282 )
2022-02-19 00:59:59 -07:00
Mark Thom
68ac92a616
don't unify module-qualified variables to ! ( #1281 )
2022-02-14 18:46:15 -07:00
Mark Thom
60dd47c696
add missing fact to beginning of tmember_t/3 ( #1275 )
2022-02-11 17:25:01 -07:00
Mark Thom
e62875ac90
tag length/2 as the source of finite_memory errors in list.pl ( #1259 )
2022-01-31 18:08:00 -07:00
Mark Thom
0d653a2ce6
improve '$skip_max_list'/4 and length/2 ( #1023 , #110 )
2022-01-29 12:47:26 -07:00
Mark Thom
142ddcd57a
use expand_goal directly for existential-qualified goals in all-solutions predicates ( #1246 )
2022-01-26 17:34:36 -07:00
Mark Thom
e6c4ecfc10
lazily throw exceptions of dcg_body from goal-expanded phrase/{2,3} ( #1244 )
2022-01-22 14:55:18 -07:00
Mark Thom
8df346f377
expand phrase/{2,3} using dcg_body whenever possible
2022-01-21 08:10:55 -07:00
Mark Thom
1854338ff4
throw errors from phrase/{2,3} where expected ( #1220 )
2022-01-19 20:19:47 -07:00
Mark Thom
11b96875e0
streamline and fix phrase/{2,3} ( #1237 )
2022-01-19 20:07:15 -07:00
Mark Thom
59992c8af2
remove number/3 from arithmetic.pl ( #1170 )
2022-01-18 17:38:45 -07:00
Mark Thom
3ebf8d5db9
clear alias in close before resetting the stream to null ( #1231 )
2022-01-17 17:58:14 -07:00
Mark Thom
413f797155
Merge pull request #1228 from triska/charsio-read-renames
...
MODIFIED: Rename two predicates in library(charsio)
2022-01-17 17:03:46 -07:00
Markus Triska
516ed1fd5b
ENHANCED: library(crypto): Retain a compact internal representation of the ciphertext throughout decryption.
...
This allows efficient decryption also of very large files and long
strings.
It is usually highly advisable to stick to common and portable library
predicates such as append/3. However, since append/3 does not yet
recognize this opportunity for improvement, I apply it manually in
this case, so that also very large files can be efficiently decrypted
using the compact internal string representation.
Without this change, decrypting a 1 GB file takes 48 GB of RAM,
whereas with this change, it only takes 2 GB (one for the string, one
for its copy with the appended tag).
2022-01-17 23:02:56 +01:00
Jos De Roo
1a4f8f992b
Update clpz.pl
...
While running with scryer-prolog the resource control file should be ~/.scryerrc
2022-01-17 22:35:31 +01:00
Markus Triska
23adfef281
MODIFIED: library(charsio): read_n_chars/3 is now called get_n_chars/3
...
This is because "read" is associated with general Prolog terms.
2022-01-17 20:37:55 +01:00
Markus Triska
20b6816562
MODIFIED: library(charsio): read_term_from_chars/2 is now called read_from_chars/2
...
This is for compatibility with SICStus Prolog and GNU Prolog.
2022-01-17 20:21:18 +01:00
Mark Thom
d22bbc54c7
Merge pull request #1195 from triska/rebis-dev-format-U
...
ADDED: format specifier ~NU, using underscores to separate groups of digits
2022-01-11 22:49:38 -07:00
Mark Thom
e3622e0860
improve between_/3 implementation ( #1186 , #1191 )
2022-01-10 18:34:25 -07:00
Markus Triska
2889a4438b
ADDED: format specifier ~NL to limit the number of digits per line
...
Example:
%?- format("~65L", [2^1000]).
%@ 10715086071862673209484250490600018105614048117055336074437503883_
%@ 70351051124936122493198378815695858127594672917553146825187145285_
%@ 69231404359845775746985748039345677748242309854210746050623711418_
%@ 77954182153046474983581941267398767559165543946077062914571196477_
%@ 686542167660429831652624386837205668069376 true.
2022-01-10 17:52:42 +01:00
Markus Triska
f5952088e3
ADDED: format specifier ~NU, using underscores to separate groups of digits
...
Example:
?- format("~2U", [10^12]).
%@ 10_000_000_000.00 true.
2022-01-10 16:07:05 +01:00
Mark Thom
976b8e426d
Merge pull request #1160 from aarroyoc/add-ugraphs-library
...
Add ugraphs library (ported from SWI)
2022-01-09 12:43:46 -07:00
Mark Thom
d90cf6384c
complete handling of control operators in interpreted (,)/2 ( #1172 )
2022-01-08 00:04:04 -07:00
Adrián Arroyo Calle
af3f676683
Minor fixes
2022-01-07 19:28:07 +01:00
Adrián Arroyo Calle
abf980d603
Merge remote-tracking branch 'upstream/rebis-dev' into add-ugraphs-library
2022-01-07 19:14:34 +01:00
Mark Thom
955e1799c8
flatten the instruction dispatch loop
2022-01-06 22:09:36 -07:00
Mark Thom
3db86f1e25
relocate most instruction routines from MachineState to Machine
2022-01-06 21:46:23 -07:00
Mark Thom
520121b2b2
remove skeletons from replaced modules
2022-01-06 21:44:41 -07:00
Mark Thom
48c1d05151
use heap_loc to refer to 0-arity atom instead of str_loc
2022-01-06 21:44:41 -07:00
Mark Thom
8ba61a1da1
defer installation of inference counter for call_with_inference_limit til after goals expanded
2022-01-06 21:44:41 -07:00
Mark Thom
fb4e627e62
fix various partial string bugs (copying using them in arg/3)
2022-01-06 21:44:41 -07:00
Mark Thom
f340f9ac94
break from loop in get_code upon successful character read
2022-01-06 21:44:41 -07:00
Mark Thom
1b3f290037
throw instantiation error if Arity is a variable in abolish/1
2022-01-06 21:44:41 -07:00