Changes between Version 46 and Version 47 of TypeFunctionsTypeChecking


Ignore:
Timestamp:
Jan 8, 2007 10:56:09 PM (9 years ago)
Author:
chak
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TypeFunctionsTypeChecking

    v46 v47  
    5656
    5757The GHC API has a new predicate `isOpenTyCon` with the understanding that it is illegal to invoke `synTyConDefn`, `synTyConRhs`, and `tyConDataCons` on type constructors that fulfil `isOpenTyCon`.
     58
     59== Core representation of family applications ==
     60
     61GHC has a notion of ''representation types'', implemented by `Type.repType`, that is used in the backend to look through foralls, vanilla synonyms, predicates, usage annotations, and vanilla newtypes to determine the types to be used in generated code.  It's a fundamental property of our implementation of indexed types that `repType` never looks through newtype and synonym families.  Instead, whenever the code generator needs to know the representation of an indexed type, the type checker and desugarer have to add an explicit cast from the indexed type to the representation.  The type of the cast expression will then have the desired representation.
    5862
    5963== Core representation of family instances ==