Comparison Functions

The empty comparison functions (<eq/>, <neq/>, <leq/>, <geq/>, <lt/> and <gt/>) and comparison functions with exactly one argument all evaluate to <true/>.

The ordered comparison functions (<leq>, <geq>, <lt> and <gt>) act as if the equivalent mathematical operator was inserted between their arguments. Thus:

<lt>
  1 2 3
</lt>

is equivalent to the mathematical expression:

1 < 2 < 3

and:

<leq>
  1 2 3
</leq>

is equivalent to the mathematical expression:

1 ≤ 2 ≤ 3

When comparing objects of different types:

Rationale

The empty comparison functions equaluate to <true> by analogy with the comparison functions.

The ordering of the comparison functions is confused in the specification with the examples for <lt> and <gt> agreeing with libxexpr's behaviour and the examples for <leq> and <geq> doing the opposite. The choice was arbitary.