Bryan O'Sullivan wrote:
Int is a bit of an odd fish that way; it's a window onto the underlying machine's behaviour, not a tidy, well-behaved mathematical ring.
I'm just being picky here: where the underlying machine's behaviour is 2's complement binary, it (Int, +, *) is actually a tidy, well-behaved mathematical ring, isomorphic to Z / 2^n Z. Furthermore, if there were overflow errors, the result would not be a ring, but an error monad over a ring or a CPO lifting a ring. (Not to say that they are not tidy, well-behaved, mathematical.)
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe