
On Sun, Jun 29, 2014 at 12:15 AM, Mike Meyer
On Sat, Jun 28, 2014 at 10:52 PM, Brandon Allbery
wrote: I imagine that, like Ord, a decision was made to implement the proper mathematical abstraction and not merely a convenient one. This seems to be the "Haskell way". (I'm not sure how it explains Double, though the numeric hierarchy has a lot of compromises in the name of convenience or expected behavior. Possibly Monad was in some sense a reaction to this, even: "we got that one wrong, let's do this one correctly".)
Double, like Int, is a computer construct, not a mathematical one. They both map to hardware types that act like mathematical ones until you look closely, but have better performance than the software constructs that have better behavior.
Sure, but that doesn't change the fact that IEEE754 NaN in particular means there is no total ordering. -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net