Availability:Arithmetic function (see is/2)
maxr(+Expr1,
+Expr2)Evaluate to the larger of Expr1 and Expr2 using
exact comparison (see cmpr/2).
If the two values are exactly equal, and one of the values is rational,
the result will be that value; the objective being to avoid "pollution"
of any precise calculation with a potentially imprecise float. So max(1,1.0)
evaluates to 1.0 while maxr(1,1.0)
evaluates to 1. This
also means that 0 is preferred over 0.0 or -0.0; -0.0 is still
considered smaller than 0.0.
maxr/2 also treats
NaN's as missing values so
maxr(1,nan)
evaluates to 1.