Original-Via: uk.ac.nsf; Fri, 24 Jan 92 20:04:55 GMT Haskell 1.2.beta defines (pp. 58 and 89) class (Num a, Ord a) => Real a and class (Real a) => Integral a Proposal: change this to ======== class (Num a, Ord a, Enum a) => Real a and class (Real a, Ix a) => Integral a Reasons for: 1: 'cause that's the way it is. 2: the more connected the graph of subclass inclusions becomes, the easier it is to understand. Reasons against: ??? Consequences: Every type that is declared to be an instance of Real (or Integral) must also be declared to be an instance of Enum (or Ix). This requires no change to the standard prelude, and only a few lines extra code for user-defined numeric types. Can anyone come up with reasons against? -- Mikael R.