[m-users.] Syntax error at token 'is': operator precedence error
    Julien Fischer 
    jfischer at opturion.com
       
    Sat May  1 01:11:49 AEST 2021
    
    
  
Hi,
On Fri, 30 Apr 2021, Volker Wysk wrote:
> I'm trying to define a predicate, which takes another predicate of arity 0
> as its first argument:
>
> :- pred issat(pred, bool).
> :- mode issat(pred is semidet, out) is det.
"pred" in the mode declaration requires parentheses for arity zero
predicates, e.g. it should be:
    :- mode issat((pred) is semidet, out) is det.
> issat(Pred, Issat) :-
>    ( if Pred then Issat = yes
>              else Issat = no
>    ).
(The standard library contains a function providing the above,
bool.pred_to_bool/2.)
Julien.
    
    
More information about the users
mailing list