xf
, yf
,
xfx
, xfy
, yfx
, yfy
, fy
or fx
. The `f
' indicates the position of the
functor, while x
and y
indicate the position
of the arguments. `y
' should be interpreted as ``on this
position a term with precedence lower or equal to the precedence of the
functor should occur''. For `x
' the precedence of the
argument must be strictly lower. The precedence of a term is 0, unless
its principal functor is an operator, in which case the precedence is
the precedence of this operator. A term enclosed in brackets ( ...
)
has precedence 0.
The predefined operators are shown in table 3. Note that all operators can be redefined by the user.
1200 | xfx | --> , :- |
1200 | fx | :- , ?- |
1150 | fx | dynamic, multifile, module_transparent, discontiguous, volatile, initialization |
1100 | xfy | ; , | |
1050 | xfy | -> |
1000 | xfy | , |
954 | xfy | \ |
900 | fy | \+ , not |
900 | fx | ~ |
700 | xfx | < , = , =.. , =@= , =:= , =< , == ,
=\= , > , >= , @< , @=< , @> ,
@>= , \= , \== , is |
600 | xfy | : |
500 | yfx | + , - , /\ , \/ , xor |
500 | fx | + , - , ? , \ |
400 | yfx | * , / , // , << , >> , mod,
rem |
200 | xfx | ** |
200 | xfy | ^ |