Generalize the negated relational operators to apply to any infix
operator that returns a boolean.  In terms of the standard operators,
this will add <&& || ^^ // and or xor err> to the family that is
implicitly equipped with logical negations.

For consistency's sake, you may also want to define junctive operators
<!& !| !^>.  '!|' corresponds with the list-op 'none', although I can
think of no intuitive list-ops for the other two; we might have to
settle for '!all' and '!one'.  If so, consider '!any' as a synonym for
'none', much like '!eq' and 'ne' are synonyms for each other.

Or just reduce the operators: [!&] and [!^].  Personally, I find
'!all' and '!one' to be more legible; but YMMV.

Jonathan "Dataweaver" Lang

Reply via email to