Adrián Arroyo Calle
80e228f236
Clean the code
2021-08-20 14:06:57 +02:00
Adrián Arroyo Calle
8ee2545b05
Add a -f switch to load alternative initialization files
2021-08-20 14:00:32 +02:00
Markus Triska
9e13f18463
ENHANCED: Domain error non_empty_list for empty arguments, addressing #1024 .
...
Example:
?- format("~d", []).
%@ caught: error(domain_error(non_empty_list,[]),format_//2)
2021-08-15 12:29:28 +02:00
Markus Triska
9d3f3eb013
ENHANCED: format_string domain error for invalid radix in format string
...
This addresses #1024 .
Example:
?- format("hello ~0r!", [12]).
%@ caught: error(domain_error(format_string,"~0r"),format_//2)
2021-08-14 20:04:07 +02:00
Markus Triska
78c2f19e72
ENHANCED: If N is omitted in ~Nr or ~NR, it defaults to 8.
...
This is for compatibility with Quintus, SICStus and GNU Prolog,
addressing #1024 .
Example:
?- format("~r", [10]).
%@ 12 true.
2021-08-14 13:48:21 +02:00
Mark Thom
9a66a626f7
run user-level and module-level initialization goals from loader.pl ( #1012 )
2021-08-01 09:25:55 -06:00
Markus Triska
bf9654e138
ADDED: ... //0, describing an arbitrary number of elements
...
This is a very versatile nonterminal. For instance, repeated elements:
?- phrase((...,[E],...,[E],...), "hello!!").
%@ E = l
%@ ; E = !
%@ ; false.
2021-07-03 09:54:01 +02:00
Mark Thom
4decd1d784
Merge pull request #996 from triska/master
...
address #995 : wrong results for popcount/1
2021-06-22 11:56:56 -06:00
Markus Triska
3e7cd24814
address #995 : wrong results for popcount/1
...
Many thanks to @notoria and @flexoron for very useful test cases!
2021-06-21 21:19:37 +02:00
Mark Thom
3e0bece53a
Merge pull request #993 from triska/master
...
ADDED: popcount(+Integer)
2021-06-18 18:13:30 -06:00
Regan-Koopmans
f5eadb2957
981 Prefer must_be/2
2021-06-18 08:22:43 +02:00
Markus Triska
ee393c66dd
ADDED: popcount(+Integer)
...
Example:
?- X #= popcount(3+5).
X = 1.
This builds on #986 provided by @Regan-Koopmans. Many thanks!
2021-06-17 20:18:36 +02:00
Regan-Koopmans
72a7765b58
981 Reimplement as library system call
2021-06-17 12:10:25 +02:00
Markus Triska
066f740819
check for correct domain of integers in reifiable expressions also in the expanded code
...
This is to preserve domain errors instead of failing silently. Example:
?- 5 #> 3 #<==> 2.
%@ caught: error(domain_error(clpz_reifiable_expression,2),unknown(2)-1)
2021-06-03 22:57:58 +02:00
Mark Thom
04121644a3
Merge pull request #978 from Skgland/master
...
fix beta build and tests
2021-06-03 12:38:18 -06:00
Markus Triska
fc8d33a98a
ENHANCED: Goal expansion for reified constraints.
...
Used in package precautionary by @dcnorris.
2021-06-03 20:26:44 +02:00
Skgland
e08c302756
fix beta build
2021-06-02 16:43:10 +02:00
Mark Thom
87ef3519d9
Merge pull request #972 from pmoura/add_pid_predicate
...
Add pid/1 predicate to the os library
2021-05-19 14:09:21 -06:00
Mark Thom
9002c33046
leave the expansion of incomplete goals in meta-predicates to call/N ( #967 , #970 )
2021-05-19 14:07:46 -06:00
Paulo Moura
b9ad6f4fd2
Add pid/1 predicate to the os library
2021-05-18 20:05:30 +01:00
Paulo Moura
58555d598b
Add rename_file/2 predicate to the files library
2021-05-18 18:08:30 +01:00
Mark Thom
0eeae24049
Merge pull request #968 from pmoura/add_make_directory_path_predicate
...
Add make_directory_path/1 predicate to the files library
2021-05-18 10:26:06 -06:00
Paulo Moura
eeac3bc436
Add delete_directory/1 predicate to the files library
2021-05-18 08:41:19 +01:00
Paulo Moura
bdebc7f32e
Add make_directory_path/1 predicate to the files library
2021-05-18 00:21:11 +01:00
Paulo Moura
0e263dd753
Fix current_predicate/1 predicate error checking
2021-05-16 23:49:21 +01:00
Mark Thom
56bbcb1cb3
Merge pull request #956 from pmoura/fix_subsumes_term_predicate
...
Fix subsumes_term/2 predicate to use unify_with_occurs_check/2 instead of (=)/2
2021-05-13 23:18:58 -06:00
Mark Thom
f02648022a
Merge pull request #960 from triska/master
...
FIXED: correct propagation of tuples_in/2 (#929 )
2021-05-13 23:18:47 -06:00
Mark Thom
9bb1f4e6f8
Merge pull request #958 from pmoura/fixes_for_retract_predicates
...
Fixes for retract predicates
2021-05-13 23:18:36 -06:00
Mark Thom
d219f0bdc6
Merge pull request #957 from pmoura/fix_at_end_of_stream_predicate_missing_check_for_instantiation_error
...
Fix at_end_of_stream/1 predicate missing check for instantiation error
2021-05-13 23:17:59 -06:00
Mark Thom
c8d0f6ff20
Merge pull request #955 from pmoura/fix_abolish_predicate_throw_of_instantiation_error
...
Fix abolish/1 predicate throw of instantiation_error
2021-05-13 23:17:30 -06:00
Markus Triska
581e055359
FIXED: correct propagation of tuples_in/2 ( #929 )
...
Many thanks to @notoria for producing a very short test case.
2021-05-13 21:48:43 +02:00
Paulo Moura
88a2cfc5e1
Fix retract_clause/2 internal predicate to correctly handle module qualification and no lose body bindings
2021-05-12 23:48:12 +01:00
Paulo Moura
fb29830521
Fix retractall/1 predicate to retract both facts and rules
2021-05-12 23:46:05 +01:00
Paulo Moura
6540fea4da
Fix at_end_of_stream/1 predicate missing check for instantiation error
2021-05-12 21:17:11 +01:00
Paulo Moura
4fd33b015e
Fix subsumes_term/2 predicate to use unify_with_occurs_check/2 instead of (=)/2
2021-05-12 20:02:09 +01:00
Paulo Moura
d2fcdb3b6c
Fix abolish/1 predicate throw of instantiation_error
2021-05-12 19:39:20 +01:00
Paulo Moura
c2fe0876c2
Fix set_stream_position/2 predicate missing argument in exception term
2021-05-12 19:32:24 +01:00
Paulo Moura
f7eda362c7
Add max_arity Prolog flag
2021-05-12 00:34:47 +01:00
Paulo Moura
42d9b57733
Fix querying bounded and integer_rounding_function flag values
2021-05-11 12:08:11 +01:00
Paulo Moura
8acbdfbf1d
Fix char_code/2 predicate wrong error term when the first argument is bound but is not an atom
2021-05-10 21:27:04 +01:00
Mark Thom
21984f0bbe
Merge pull request #938 from pmoura/fix_bitwise_shift_functions_type_error_in_second_argument
...
Fix bitwise shift functions type error in the second argument
2021-05-10 11:10:20 -06:00
Mark Thom
5eac945bc0
Merge pull request #937 from pmoura/fix_open_predicate_error_term_on_bound_stream_argument
...
Fix open/3-4 predicates error term when the stream argument is bound
2021-05-10 11:10:12 -06:00
Mark Thom
2736b4198a
Merge pull request #936 from pmoura/fix_throw_1_control_construct_with_var_argument
...
Fix throw/1 control construct to throw an instantiation error when the argument is not bound
2021-05-10 11:09:59 -06:00
Mark Thom
94923175a8
Merge pull request #940 from pmoura/fix_power_infix_operator_type_as_per_standard
...
Fix (**)/2 operator type
2021-05-10 11:09:23 -06:00
Mark Thom
f1c629e7bf
Merge pull request #944 from triska/master
...
FIXED: module qualification for between/3 in goal expansion (#941 )
2021-05-10 11:09:09 -06:00
Mark Thom
5d0c60bd24
Merge pull request #945 from pmoura/fix_char_code_error_checking
...
Fix char_code/2 predicate failure instead of exception on non-integer second argument
2021-05-10 11:08:58 -06:00
Paulo Moura
63db194140
Fix char_code/2 predicate failure instead of exception on non-integer second argument
2021-05-10 00:37:09 +01:00
Markus Triska
38db8d4e1a
FIXED: module qualification for between/3 in goal expansion ( #941 )
...
Many thanks to @dcnorris for reporting this issue!
2021-05-09 23:54:37 +02:00
Paulo Moura
c2e8cbb846
Fix op/3 predicate operator_priority domain error
2021-05-09 22:25:37 +01:00
Paulo Moura
3c567b895f
Fix (**)/2 operator type
2021-05-09 21:02:44 +01:00