Changes between Version 338 and Version 339 of TypeFunctionsStatus


Ignore:
Timestamp:
Jul 5, 2008 3:44:11 AM (7 years ago)
Author:
chak
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TypeFunctionsStatus

    v338 v339  
    1616    * `rewriteWithOneEquality` should uses `eqInstToRewrite` 
    1717   * #2146 (infelicity in decomposition for higher-order TFs) 
     18   * #2102 (superclass equalities) 
     19    * To fix superclass equalities (specifically getting the coercion evidence), we could introduce a kind of typelet just for evidence.  In fact, re-use `HsBind.VarBind` and make its right-hand side a specially data structure describing evidence construction, instead of being a general `HsExpr`.  That evidence construction generation can have a case for extracting superclass constraints.  The desugarer than has to generate the case expression bringing the equality in scope from that. 
    1820 
    1921 * GADT: 
    2022  * #2212 (Assertion failure in `writeMetaTyVar` with -DDEBUG on gadt/equal; see also below) 
    2123  * #2151 (nested GADT constructors in patterns) 
     24  * #2040 (incomplete deduction of evidence) 
    2225 
    2326 * Misc: 
     
    2831   * #1897 If you infer a type for a function, then should check the function against that sigature, to check that if the user gave that signature, then typechecking would again succeed.  See this thread http://www.haskell.org/pipermail/haskell-cafe/2008-April/041385.html) 
    2932  
    30  * #2102 (superclasses) 
    31  * #2040 (GADT) 
    3233 * #1999 (GADT) 
    3334 * #1948 
     
    4849 * `should_run/Simple12(normal,optc,profc,profasm)` (type synonym families) 
    4950 
    50 '''Check whether these still fail.''' 
     51''Check whether these still fail.'' 
     52 
     53'''Feature requests:''' 
     54 * #2101 
    5155 
    5256'''Debugging of type families:''' 
     
    100104 0. CONCEPTUAL issue: At least with `skolemOccurs`, the policy of not zonking the types embedded in the kinds of coercion type variables does no longer work.  This becomes, for example in the test `Simple13`, apparent.  The skolem introduced in `skolemOccurs` finds its way into variable kinds (which is visible when inspecting them during `TcMType.zonk_tc_tyvar`). 
    101105 0. When `Simple13` is compiled with a compiler that was built with `-DDEBUG`, it prints a warning about not matching types being used during constructing a trans coercion. 
    102  0. To fix superclass equalities (specifically getting the coercion evidence), we could introduce a kind of typelet just for evidence.  In fact, re-use `HsBind.VarBind` and make its right-hand side a specially data structure describing evidence construction, instead of being a general `HsExpr`.  That evidence construction generation can have a case for extracting superclass constraints.  The desugarer than has to generate the case expression bringing the equality in scope from that. 
    103106 0. In `TcTyFuns.genericNormaliseInst`, we need to figure out what to do with `ImplicInst`, `Method`, and `LitInst` dictionaries. 
    104107 0. ghc falls over if a bang pattern is put at an argument of type `F a`.