Changes between Version 32 and Version 33 of Commentary/Compiler/GenericDeriving


Ignore:
Timestamp:
May 9, 2011 7:08:29 AM (3 years ago)
Author:
dreixel
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Compiler/GenericDeriving

    v32 v33  
    2828== Main components == 
    2929 
    30  * `TcDeriv.tcDeriving` generates an `InstInfo` for each data type that fulfills the `isRep0` predicate. This `InstInfo` is the `Representable0` instance for that type, allowing it to be handled generically (by kind-`*` generic functions). 
     30 * `TcDeriv.tcDeriving` generates an `InstInfo` for each data type that fulfills the `isRep0` predicate. This `InstInfo` is the `Generic` instance for that type, allowing it to be handled generically (by kind-`*` generic functions). 
    3131 
    3232 * The representation types and core functionality of the library live on `GHC.Generics` (on the `ghc-prim` package). 
     
    3838== What already works == 
    3939 
    40  * `Representable0` instances are automatically generated when `-XGenerics` is enabled. 
     40 * `Generic` instances can be derived when `-XDeriveGeneric` is enabled. 
    4141 
    42  * The `default` keyword can now be used for generic default method signatures. 
     42 * The `default` keyword can used for generic default method signatures when `-XDefaultSignatures` is enabled. 
    4343 
    4444 * Generic defaults are properly instantiated when giving an instance without defining the generic default method. 
    4545 
    46  * Base types like `[]`, `Maybe`, tuples, come with Representable0 instances. 
     46 * Base types like `[]`, `Maybe`, tuples, come with Generic instances. 
    4747 
    4848== To do == 
    4949 
    50  * Generate `Representable1` instances 
     50 * Generate `Generic1` instances 
    5151 
    52  * Print also the Rep0 type instance when -ddump-deriving is on 
     52 * Print also the Rep type instance when -ddump-deriving is on 
    5353 
    54  * Give better error messages when we cannot derive Representable0 (currently we say only `Cannot derive Representable`) 
     54 * Give better error messages when we cannot derive Generic (currently we say only `Cannot derive Generic`) 
    5555 
    56  * Register the `DeriveRepresentable` and `DefaultSignatures` extensions with Cabal. 
     56 * Register the `DeriveGeneric` and `DefaultSignatures` extensions with Cabal. 
    5757 
    5858 * Do we want `Show`, etc. instances for types like `U1`, `:+:`, ...?