Changes between Version 2 and Version 3 of Status/May08

May 6, 2008 12:18:48 PM (9 years ago)



  • Status/May08

    v2 v3  
    11= GHC Status May 2008 =
    3 TODO:
    4  * Current status of type families and integration of GADTs -=chak
    5  * Current status of Data Parallel Haskell -=chak
     3The last six months have been a time of consolidation for GHC.  We have done many of the things described in the last HCAR status report (November 2007), but there are few new headline items to report, so this status report is briefer than usual. 
     5  * '''Simple language extensions'''
     6    * Record syntax: wild-card patterns, punning, and field disambiguation
     7    * View patterns
     8    * Generalised list comprehensions
     9    * Quasi-quoting
     11  * '''Type-indexed families'''.  We learned a lot by writing a paper about the question of type inference in the presence of type families (and existentials, and GADTs): "[ Type checking with open type functions]".  The implementation has not quite caught up with the paper and is still incomplete in many ways, but it's a focus of active work. 
     13  * '''Parallel garbage collection'''. Much implementation work, and a paper for ISMM 2008: "[ Parallel generational-copying garbage collection with a block-structured heap]".
     15  * '''Impredicative polymorphism'''.  We're not happy with GHC's current implementation of impredicative polymorphism, which is rather complicated and ad hoc.  Dimitrios (with Simon and Stephanie) wrote a paper about a new and better approach: "[ FPH : First-class Polymorphism for Haskell]".  At the same time, Daan Leijen refined his closely-related design: "[ Flexible types: robust type inference for first-class polymorphism]".  Daan's design has a much simpler implementation, in exchange for an (arguably) less-predicatable specification.  Which of these two should we implement?  Let us know!
     17Work on the back end has been stalled, but John Dias started a 6-month internship in April, so expect progress on this front!
     19== Nested data parallelism ==
     21We have been working hard on Data Parallel Haskell, especially Roman Leshchinskiy and Gabriele Keller.  It has turned out be be hard to get the entire transformation and optimisation stack to work smoothly, and we have not made progress announcements because we don't want to yell about it until it Actually Works.  But it is the biggest single GHC focus: Roman works on it full time.
     23''Manuel: more to say.''
     25We expect to release a working version of Data Parallel Haskell as part of GHC 6.10 (see below).
     28== Release plans ==
     30We plan to release GHC 6.8.3 at the end of May 2008, with many bug-fixes but no new features.
     32We plan to release GHC 6.10 around the time of ICFP, with significant new features.  The up-to-date list of new stuff is kept at [], but here's a quick summary:
     33  * Simple language extensions (mentioned above)
     34  * Type-indexed families
     35  * Data Parallel Haskell
     36  * Parallel garbage collection
     37  * Extensible exceptions
     38  * Shared libraries
     39  * Improved back end
     40  * Further library reorganisation