[ Control | Reference Manual | Alphabetic Index ]
Succeeds if Goal succeeds.
- Atom or compound term.
Calls the goal Goal. This predicate is used to call goals whose
functors are known only at the time they are called.
call(Goal) is logically the same as Goal and !/0 does not cut through
This predicate is sensitive to its module context (tool predicate, see @/2).
Fails if Goal fails
Resatisfiable if Goal is resatisfiable
- (4) instantiation fault
- Goal is not instantiated.
- (5) type error
- Goal is not an atom or a compound term.
or(A -> B, C) :- call(A), !, call(B).
or(_ -> _, C) :- call(C).
user compiled 412 bytes in 0.02 seconds
[eclipse]: or(write(a)->fail, write(k)).
call(G). (Error 4).
call("write(a)"). (Error 5).
subcall / 2, @ / 2, : / 2, call / (2 .. 255)