Changes between Version 4 and Version 5 of StandardClasses


Ignore:
Timestamp:
Sep 13, 2006 8:49:23 AM (8 years ago)
Author:
ross@…
Comment:

rearrange, plus a few notes

Legend:

Unmodified
Added
Removed
Modified
  • StandardClasses

    v4 v5  
    55Many of the proposals involve additional superclasses, which would be less burdensome with [ticket:101 class aliases] or something similar, but such features are not yet implemented. 
    66 
    7 == The Read class == 
    8 See ReadClass. 
     7== Constructor classes == 
    98 
    10 == The Enum class == 
    11 Issues: 
    12  * `succ` and `pred` are unused. 
    13  * The default definitions of `enum`* would make more sense if `toEnum` and `fromEnum` used `Integer` instead of `Int`. 
    14  
    15 == The Functor class == 
     9=== The Functor class === 
    1610Proposal: 
    1711 * Add instances for `((->) a)`, `((,) a)` and `Either a`. 
     
    4640 
    4741Proposals: 
    48  * a group-like class with `zero`, `(+)` and `negate`/`(-)`. 
     42 * a group-like class with `zero`, `(+)` and `negate`/`(-)` 
     43   (could be further split with a monoid sub-class) 
    4944 * a ring-like subclass adding `(*)` and `one`/`fromInteger`, with the existing `Num` class as a further subclass. 
    5045Note that the `Float` and `Double` instances will not satisfy the usual axioms for these structures. 
     
    5247=== The Integral class === 
    5348Issues: 
    54  * `div` and `mod` also sense for rationals and polynomials, but `Ord`, `Num` and `toInteger` (and `toRational` for polynomials) don't. 
    55    However `quot` and `rem` assume an ordering. 
     49 * `div` and `mod` also sense for rationals and polynomials, but `toInteger` does not. 
     50   `Ord`, `Num(abs, signum)`, `toInteger` and `toRational` don't make sense for polynomials. 
     51   `quot` and `rem` assume an ordering. 
    5652 
    5753=== The Fractional class === 
     
    6763   This is independent of all the other proposals. 
    6864 
    69 == The Ix class == 
     65== Other standard classes == 
     66 
     67=== The Read class === 
     68See ReadClass. 
     69 
     70=== The Enum class === 
     71Issues: 
     72 * `succ` and `pred` are unused. 
     73 * The default definitions of `enum`* would make more sense if `toEnum` and `fromEnum` used `Integer` instead of `Int`. 
     74 
     75=== The Ix class === 
    7076Issues: 
    7177 * There is no portable way to report indexing errors accurately.