Prefix −
Same as the subtraction: 0 - number
Prefix +
Same as the addition: 0 + number.
See Chapter 16, “Numbers and Arithmetic,” on page 217 for details about precision, the format of valid
numbers, and the operation rules for arithmetic. Note that if an arithmetic result is shown in exponential
notation, it is likely that rounding has occurred.
Comparison
The comparison operators compare two terms and return the value 1if the result of the comparison is true,
or 0 otherwise.
The strict comparison operators all have one of the characters defining the operator doubled. The ==, \==,
/==, and ¬== operators test for an exact match between two strings. The two strings must be identical
(character by character) and of the same length to be considered strictly equal. Similarly, the strict
comparison operators such as >> or << carry out a simple character-by-character comparison, with no
padding of either of the strings being compared. The comparison of the two strings is from left to right. If
one string is shorter than and is a leading substring of another, then it is smaller than (less than) the other.
The strict comparison operators also do not attempt to perform a numeric comparison on the two
operands.
For all the other comparison operators, if both terms involved are numeric, a numeric comparison (in which
leading zeros are ignored, and so forth—see section “Numeric Comparisons” on page 222) is effected.
Otherwise, both terms are treated as character strings (leading and trailing blanks are ignored, and then
the shorter string is padded with blanks on the right).
Character comparison and strict comparison operations are both case-sensitive, and for both the exact
collating order may depend on the character set used for the implementation. For example, in an EBCDIC
environment, lowercase alphabetics precede uppercase, and the digits 0–9 are higher than all alphabetics.
The comparison operators and operations are:
= True if the terms are equal (numerically or when padded, and so forth)
\=, ¬=, /=
True if the terms are not equal (inverse of =)
> Greater than
< Less than
>< Greater than or less than (same as not equal)
<> Greater than or less than (same as not equal)
>= Greater than or equal to
\<, ¬< Not less than
<= Less than or equal to
\>, ¬> Not greater than
== True if terms are strictly equal (identical)
\==, ¬==, /==
True if the terms are NOT strictly equal (inverse of ==)
>> Strictly greater than
<< Strictly less than
REXX General Concepts
Chapter 12. REXX General Concepts 117