This is functionally identical to the OCaml polymorphic inequality test >=
except that it is total (hence reflexive) even on floating-point NaNs. More
importantly, it will more efficiently short-cut comparisons of large data
structures where subcomponents are identical (pointer equivalent).
FAILURE CONDITIONS
May fail when applied to functions.
EXAMPLE
# let x = 0.0 /. 0.0;;
val x : float = nan
# x >= x;;
val it : bool = false
# x >=? x;;
val it : bool = true