Changes between Version 28 and Version 29 of TypeFunctions


Ignore:
Timestamp:
Aug 1, 2006 5:22:59 PM (8 years ago)
Author:
chak
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TypeFunctions

    v28 v29  
    3333 * The degenerate case of a data type/newtype declaration or type equation where all type parameters are variables is valid without a kind signature and coincides with the data types and type synonyms of vanilla Haskell.  In fact, for the moment, we do not allow the degenerate case to have a kind signature.  The latter constraint could be dropped if it proves to be inconvenient.  (Rationale: Multiple type equations are useless when one is degenerate - as the whole system needs to be confluent and we don't have sequential matching on type equations.  So, we get backwards compatibility for free.) 
    3434 * All type indexes of an associated indexed type or type function need to be class parameters. 
    35  * Instances of indexed types may not overlap.  Instances of type equations may only overlap if the equations coincide at critical pairs. 
     35 * Instances of indexed types may not overlap.  Instances of type equations may only overlap if the equations coincide at critical pairs.  (Rational: We cannot be more lazy about checking overlap, as we otherwise cannot guarantee that we generate an F,,C,, program that fulfils the formal consistency criterion.) 
    3636 
    3737Restrictions: