[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
The Rationale for the section "Fixnums" begins:
Rationale: The operations whose names begin with fixnum implement
arithmetic on a quotient ring of the integers ...
No finite quotient ring of the integers is an ordered ring (any
ordered ring with identity contains an isomorphic copy of the
integers, so it is infinite), so the operations that rely on order,
don't make sense. I suggest they be removed.
Once they *are* removed, then there seems to be no reason to have
(now partially) parallel definitions of fixnum-* operations, most of
which do *exactly* the same thing as their fx* counterpart.
It would be more helpful identify and list the few fx* and fixnum-*
operations that might overflow, and so have different semantics, and
 An ordered ring satisfies
(1) Given a and b, precisely one of a < b, a = b, or a > b is true.
(2) Given a < b and any c, a+c < b+c; and if c > 0 then a*c < b*c.
(3) x < y and y < z implies x < z.
The presumed fixnum-* operations, which claim to operate on a ring,
rely on an ordering doesn't satisfy these properties. Without these
properties, flow analysis, stated as one of the motivations of this
SRFI, of inequalities is useless.