Floating-point total ordering.
authorTaylor R Campbell <campbell@mumble.net>
Thu, 29 Nov 2018 03:05:53 +0000 (03:05 +0000)
committerTaylor R Campbell <campbell@mumble.net>
Fri, 30 Nov 2018 06:53:15 +0000 (06:53 +0000)
commitd33f594b36db180618392b50338cd06716d41c1d
tree515895e9859949c38ea6bdd75ef2b0322127d8fc
parent58898b5570924c3bef3477eeee4760f43d552c44
Floating-point total ordering.

- (flo:total< x y) is true if x < y in the total ordering on
  floating-point values defined in IEEE 754-2008 Sec. 5.10, i.e. this
  is the totalOrder function of IEEE 754-2008 Sec. 5.7.2.
- (flo:total-order x y) is -1 if x < y, 0 if x = y, +1 if x > y in the
  total ordering -- the three-way comparison version of total<.
- (flo:total-mag< x y) = (flo:total< (flo:abs x) (flo:abs y))
- (flo:total-order-mag x y)
  = (flo:total-order (flo:abs x) (flo:abs y))

While here, tweak release notes on flonum stuff.
src/relnotes/flonum
src/runtime/primitive-arithmetic.scm
src/runtime/runtime.pkg
tests/runtime/test-flonum.scm