Unset Values
- Last UpdatedMar 28, 2023
- 1 minute read
A particular class of undefined values are unset values. The concept exists for attributes which are valid for a given element, but for which no value has been assigned. Typically these may be elements of an array, or 'word' attributes. References of value =0/0 are also treated as unset.
Unset values are propagated as for undefined values (except for Boolean operations- see below). Undefined values take precedence over unset. There is a specific logical function UNSET to test if a values is unset.
Across comparisons, unset values are not propagated, but are treated as follows:
|
Operator |
When Applied to an UNSET |
|---|---|
|
EQ, GT, GE, LT, LE |
Results in FALSE. |
|
NE |
Results in TRUE. |
|
OR, AND |
Values are treated as FALSE. |
For example, if DESP(2) and LVAL(3) are unset then:
(DESP(2) GT 99) -> False
(DESP(2) NE 33) -> True
(:LVAL(3) AND TRUE) -> False