Legend:

The main list of new features in GHC 6.12 remains much the same as it was in our last status report. Happily, there has been progress on all fronts.

46

46

47

* The whole area of '''GADTs, indexed type families, and associated types''' remains in a ferment of development. It's clear that type families jolly useful: many people are using them even though they are only partially supported by GHC 6.10. But they have made the type inference engine pretty complicated and, Simon PJ, Manuel Chakravarty, Tom Schrijvers, Dimitrios Vytiniotis, and Martin Sulzmann have been busy thinking about ways to make type inference simpler and more uniform. Our ICFP'08 paper [http://research.microsoft.com/~simonpj/papers/assoc-types Type checking with open type functions] was a first stab (which we subsequently managed to simplify quite a bit). Our new paper (submitted to ICFP'09) [http://research.microsoft.com/~simonpj/papers/gadt Complete and decidable type inference for GADTs] tackles a different part of the problem. And we are not done yet; for example, our new inference framework is designed to smoothly accommodate Dimitrios's work on [http://research.microsoft.com/~simonpj/papers/boxy/ FPH: First class polymorphism for Haskell (ICFP'08)].

47

* The whole area of '''GADTs, indexed type families, and associated types''' remains in a ferment of development. It's clear that type families jolly useful: many people are using them even though they are only partially supported by GHC 6.10. (You might enjoy a programmers-eye-view tutorial [http://research.microsoft.com/~simonpj/papers/assoc-types Fun with type functions] that Oleg, Ken, and Simon wrote in April 2009.)

48

49

But these new features have made the type inference engine pretty complicated and, Simon PJ, Manuel Chakravarty, Tom Schrijvers, Dimitrios Vytiniotis, and Martin Sulzmann have been busy thinking about ways to make type inference simpler and more uniform. Our ICFP'08 paper [http://research.microsoft.com/~simonpj/papers/assoc-types Type checking with open type functions] was a first stab (which we subsequently managed to simplify quite a bit). Our new paper (submitted to ICFP'09) [http://research.microsoft.com/~simonpj/papers/gadt Complete and decidable type inference for GADTs] tackles a different part of the problem. And we are not done yet; for example, our new inference framework is designed to smoothly accommodate Dimitrios's work on [http://research.microsoft.com/~simonpj/papers/boxy/ FPH: First class polymorphism for Haskell (ICFP'08)].

48

50

49

51

* '''Data Parallel Haskell''' remains under very active development. The [wiki:DataParallel current state of play], including some benchmark figures is on the wiki. We also wrote a substantial paper [http://research.microsoft.com/~simonpj/papers/ndp Harnessing the multicores: nested data parallelism in Haskell] for FSTTCS; you may find this paper a useful tutorial on the whole idea of nested data parallelism.