[Haskell] DRAFT: Haskell' status update

Simon Marlow marlowsd at gmail.com
Mon Apr 21 14:06:51 EDT 2008


Those on the Haskell' mailing list may have seen recent signs of
activity on the Haskell' front.  I thought I should clarify the current
status, and update the community on our plans for Haskell'.

The main sticking point in the design of Haskell' has been the type
system: namely whether Haskell' should have Functional Dependencies or
Type Families.  This issue is still undecided, although the experts are
hard at work on developing a stronger understanding of Type Families in
particular.

Nevertheless, the committee feels that we cannot have a Haskell' without
some way to resolve ambiguities when using multi-parameter type
classes, be it Functional Dependencies (FDs) or Type Families (TFs).
For one thing, a great deal of existing code uses FDs or depends on code
that does, so unless we adopt one of these extensions all this code will
still exist outside of Haskell', and that is far from ideal.  So we
decided to proceed in two stages:

   - "Haskell' alpha" will be a complete language specification,
     including all the modifications and additions we want to make
     to the language *except* for FDs or TFs.

   - Haskell' will follow afterward, adding either FDs or TFs.

The motivation for this two-stage approach is that we can make progress
on all the other parts of the language without being blocked on the type
system, we can start work on implementing Haskell' alpha in our
compilers, users can start using the new standard, and we can gain some
experience with using it in practice.

On the process side of things, we're now tracking the status of all
language design proposals on this page:

   http://hackage.haskell.org/trac/haskell-prime/wiki/Status

and as usual all the Haskell' resources are on the wiki:

   http://hackage.haskell.org/trac/haskell-prime/wiki

The committee have been discussing various proposals amongst ourselves
over the past few weeks, with the goal of making as many concrete 
decisions as possible.  However, the general policy is still for 
technical discussions to take place in public, as far as possible.

Changes to the status page are sent to the public mailing list, and we
welcome comments on any of the issues, regardless of status.

Thanks for your patience :-)  And rest assured that progress is being made!

Cheers,

Simon (and the Haskell' committee)


More information about the Haskell mailing list