Changes between Version 21 and Version 22 of TypeFunctionsTypeChecking


Ignore:
Timestamp:
Aug 18, 2006 9:16:06 PM (8 years ago)
Author:
chak
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TypeFunctionsTypeChecking

    v21 v22  
    6464==== The `DataCon`s of the variants of an instance ==== 
    6565 
     66`DataCon`s of data instances differ from ordinary `DataCon`s by a value of the form `Just typats :: Maybe [Type]` in the new field `dcInstPats`.  It gives the instance patterns at which the data constructor has been declared; e.g., given the declaration 
     67{{{ 
     68data instance Map (a, b) v = MapPair (Map a (Map b v)) 
     69}}} 
     70the instance patterns are `[(a, b), v]`.  Whenever the field `dcInstPats` of a `DataCon` is not `Nothing`, the field `algTcParent` of its `TyCon` must be of the form `FamilyTyCon famTyCon`, where `famTyCon` is the `TyCon` of the data family to which the instance belongs. 
     71 
    6672==== The equality axiom identifying family instance and representation type ==== 
    6773