An operator is used to perform an operator on one or more values. The most common sorts of operators are
arithmetic operators, such as those which perform addition or multiplication. For example:
The arithmetic operators available in OmniMark are
/ (division), and
modulo (the remainder you get when
you divide the number by the base value).
OmniMark also provides a full set of operators that are used to compare two or more numeric values. For example:
process do when x = y output "equal%n" else when x > y output "greater%n" else when x < y output "lesser%n" done
The other available numeric comparison operators are != (not equal),
>= (greater than or equal to), and
<= (less than or equal to).
process do when x = y & z > 4 output "first test is true%n" else when y = z | x = 4 output "second test is true%n" else output "neither test is true%n" done
You can overload OmniMark's arithmetic and comparison operators to work with new data types, particularly types
that you define using records, by writing overloaded functions. When you overload a comparison operator, the
return type must be