In the structure
complex is called the functor. Normally, structures are written in prefix notation, with the
functor before its arguments.
Prolog allows us to declare that a given functor can be written between two arguments (infix), after an argument (postfix), or before an argument (prefix). Doing this avoids the need for brackets. Such functors are called operators. Operators can be given different precedences and associativities.
Some functors, such as
already defined as operators by the system. This is why we can write
C is A+B instead of
is(C,+(A,B)). However, the bracketed
form is also allowed.
Note: These operators are atoms. As well as sequences of letters, atoms
can be sequences of ``symbol characters''. Examples: