Changes between Version 5 and Version 6 of Status/Nov07


Ignore:
Timestamp:
Dec 4, 2007 11:20:36 AM (6 years ago)
Author:
simonpj
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Status/Nov07

    v5 v6  
    1212 
    1313[[Image(Status/Nov07:totals.png)]] 
     14 
     15These graphs show "tickets" which include bugs, feature requests, and tasks.  Of the "open tickets", about half are bugs.   
    1416 
    1517The major new features of 6.8.1 were described in the last issue 
     
    9092== Type system stuff == 
    9193 
    92  * I'll write more about type equalities 
     94The big innovation in GHC's type system has been the gradual 
     95introduction of indexed type families in the surface syntax, and of 
     96type equalities in the internal machinery.   
     97 
     98Indexed data families (called "associated data types" when 
     99declared in type classes) are fairly simple, and they work fine 
     100in GHC 6.8.1.  Indexed type families (aka "associated type synonyms") 
     101are a different kettle of fish, especially when combined with 
     102the ability to mention type equalities in overloaded types, thus: 
     103{{{ 
     104  f :: forall a b. (a ~ [b]) => ... 
     105}}} 
     106Tom Schrijvers spent three months at Cambridge, working on 
     107the theory and implementation of a type inference algorithm. As  
     108a result we have a partially-working implementation, and we  
     109understand the problem much better, but there is still much to 
     110do, both on the theoretical and practical front.  It's trickier 
     111than we thought!  We have a short paper [http://research.microsoft.com/%7Esimonpj/papers/assoc-types/index.htm Towards open type functions for Haskell] which 
     112describes some of the issues, and an [http://hackage.haskell.org/trac/ghc/wiki/TypeFunctions wiki page] that we keep up to date; it has a link to details of implementation status.  This is all joint work with 
     113Martin Sulzmann, Manuel Chakravarty, and Tom Schrijvers. 
     114 
     115 
     116== Data parallel Haskell == 
     117 
     118MANUEL: can you write something? 
     119 
    93120 
    94121