add fail predicate
This commit is contained in:
@@ -187,6 +187,7 @@ The following predicates are built-in to Scryer.
|
|||||||
* `dif/2`
|
* `dif/2`
|
||||||
* `expand_goal/2`
|
* `expand_goal/2`
|
||||||
* `expand_term/2`
|
* `expand_term/2`
|
||||||
|
* `fail/0`
|
||||||
* `false/0`
|
* `false/0`
|
||||||
* `findall/{3,4}`
|
* `findall/{3,4}`
|
||||||
* `float/1`
|
* `float/1`
|
||||||
|
|||||||
@@ -14,12 +14,12 @@
|
|||||||
assertz/1, atom_chars/2, atom_codes/2, atom_concat/3,
|
assertz/1, atom_chars/2, atom_codes/2, atom_concat/3,
|
||||||
atom_length/2, bagof/3, catch/3, char_code/2, clause/2,
|
atom_length/2, bagof/3, catch/3, char_code/2, clause/2,
|
||||||
current_op/3, current_predicate/1, current_prolog_flag/2,
|
current_op/3, current_predicate/1, current_prolog_flag/2,
|
||||||
expand_goal/2, expand_term/2, false/0, findall/3, findall/4,
|
expand_goal/2, expand_term/2, fail/0, false/0, findall/3,
|
||||||
get_char/1, halt/0, number_chars/2, number_codes/2, once/1,
|
findall/4, get_char/1, halt/0, number_chars/2, number_codes/2,
|
||||||
op/3, read_term/2, repeat/0, retract/1, set_prolog_flag/2,
|
once/1, op/3, read_term/2, repeat/0, retract/1,
|
||||||
setof/3, sub_atom/5, subsumes_term/2, term_variables/2,
|
set_prolog_flag/2, setof/3, sub_atom/5, subsumes_term/2,
|
||||||
throw/1, true/0, unify_with_occurs_check/2, write/1,
|
term_variables/2, throw/1, true/0, unify_with_occurs_check/2,
|
||||||
write_canonical/1, write_term/2, writeq/1]).
|
write/1, write_canonical/1, write_term/2, writeq/1]).
|
||||||
|
|
||||||
% module resolution operator.
|
% module resolution operator.
|
||||||
:- op(600, xfy, :).
|
:- op(600, xfy, :).
|
||||||
@@ -123,6 +123,8 @@ set_prolog_flag(Flag, _) :-
|
|||||||
|
|
||||||
% control operators.
|
% control operators.
|
||||||
|
|
||||||
|
fail :- '$fail'.
|
||||||
|
|
||||||
\+ G :- G, !, false.
|
\+ G :- G, !, false.
|
||||||
\+ _.
|
\+ _.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user