Handbook
Glossary
Linear order protocol
Factor handbook
»
The language
»
Objects
Prev:
Equality
Next:
Classes
Some classes define an intrinsic order amongst instances. This includes numbers, sequences (in particular, strings), and words.
<=>
( obj1 obj2 -- <=> )
>=<
( obj1 obj2 -- >=< )
compare
( obj1 obj2 quot -- <=> )
invert-comparison
( <=> -- >=< )
The above words output order specifiers.
Ordering specifiers
Utilities for comparing objects:
after?
( obj1 obj2 -- ? )
before?
( obj1 obj2 -- ? )
after=?
( obj1 obj2 -- ? )
before=?
( obj1 obj2 -- ? )
Minimum, maximum, clamping:
min
( obj1 obj2 -- obj )
max
( obj1 obj2 -- obj )
clamp
( x min max -- y )
Out of the above generic words, it suffices to implement
<=>
alone. The others may be provided as an optimization.
Linear order example
See also
Sorting sequences