diff --git a/core/math/order/order.factor b/core/math/order/order.factor index 702c54376b..b39b81ba2f 100644 --- a/core/math/order/order.factor +++ b/core/math/order/order.factor @@ -17,20 +17,20 @@ GENERIC: <=> ( obj1 obj2 -- <=> ) ) ( x y -- ? ) +: (real<=>) ( x y -- ? ) 2dup < [ 2drop +lt+ ] [ number= +eq+ +gt+ ? ] if ; inline -MATH: number<=> ( x y -- ? ) -M: fixnum number<=> { fixnum fixnum } declare (number<=>) ; inline -M: bignum number<=> { bignum bignum } declare (number<=>) ; inline -M: float number<=> { float float } declare (number<=>) ; inline -M: real number<=> (number<=>) ; inline +MATH: real<=> ( x y -- ? ) +M: fixnum real<=> { fixnum fixnum } declare (real<=>) ; inline +M: bignum real<=> { bignum bignum } declare (real<=>) ; inline +M: float real<=> { float float } declare (real<=>) ; inline +M: real real<=> (real<=>) ; inline PRIVATE> -M: real <=> number<=> ; inline +M: real <=> real<=> ; inline GENERIC: before? ( obj1 obj2 -- ? ) GENERIC: after? ( obj1 obj2 -- ? )