[Haskell] ANNOUNCE: GHC version 6.12.1

Dennis Walter dennis.walter at gmail.com
Mon Dec 14 12:25:53 EST 2009

Where has Control.Concurrent.STM gone?
I cannot find it on

I hope that is not what you meant by "Considerably improved support
for parallel execution" ;-)


On Mon, Dec 14, 2009 at 2:36 PM, Ian Lynagh <igloo at earth.li> wrote:
>   ==============================================================
>    The (Interactive) Glasgow Haskell Compiler -- version 6.12.1
>   ==============================================================
> The GHC Team is pleased to announce a new major release of GHC. There
> have been a number of significant changes since the last major release,
> including:
> * Considerably improved support for parallel execution. GHC 6.10 would
>  execute parallel Haskell programs, but performance was often not very
>  good. Simon Marlow has done lots of performance tuning in 6.12,
>  removing many of the accidental (and largely invisible) gotchas that
>  made parallel programs run slowly.
> * As part of this parallel-performance tuning, Satnam Singh and Simon
>  Marlow have developed ThreadScope, a GUI that lets you see what is
>  going on inside your parallel program. It's a huge step forward from
>  "It takes 4 seconds with 1 processor, and 3 seconds with 8 processors;
>  now what?". ThreadScope will be released separately from GHC, but at
>  more or less the same time as GHC 6.12.
> * Dynamic linking is now supported on Linux, and support for other
>  platforms will follow. Thanks for this most recently go to the
>  Industrial Haskell Group who pushed it into a fully-working state;
>  dynamic linking is the culmination of the work of several people over
>  recent years. One effect of dynamic linking is that binaries shrink
>  dramatically, because the run-time system and libraries are shared.
>  Perhaps more importantly, it is possible to make dynamic plugins from
>  Haskell code that can be used from other applications.
> * The I/O libraries are now Unicode-aware, so your Haskell programs
>  should now handle text files containing non-ascii characters, without
>  special effort.
> * The package system has been made more robust, by associating each
>  installed package with a unique identifier based on its exposed ABI.
>  Now, cases where the user re-installs a package without recompiling
>  packages that depend on it will be detected, and the packages with
>  broken dependencies will be disabled. Previously, this would lead to
>  obscure compilation errors, or worse, segfaulting programs.
>  This change involved a lot of internal restructuring, but it paves the
>  way for future improvements to the way packages are handled. For
>  instance, in the future we expect to track profiled packages
>  independently of non-profiled ones, and we hope to make it possible to
>  upgrade a package in an ABI-compatible way, without recompiling the
>  packages that depend on it. This latter facility will be especially
>  important as we move towards using more shared libraries.
> * There are a variety of small language changes, including
>  * Some improvements to data types: record punning, declaring
>    constructors with class constraints, GADT syntax for type families
>    etc.
>  * You can omit the "$" in a top-level Template Haskell splice, which
>    makes the TH call look more like an ordinary top-level declaration
>    with a new keyword.
>  * We're are deprecating mdo for recursive do-notation, in favour of
>    the more expressive rec statement.
>  * We've concluded that the implementation of impredicative polymorphism
>    is unsustainably complicated, so we are re-trenching. It'll be
>    deprecated in 6.12 (but will still work), and will be either removed
>    or replaced with something simpler in 6.14.
> The full release notes are here:
>  http://haskell.org/ghc/docs/6.12.1/html/users_guide/release-6-12-1.html
> How to get it
> ~~~~~~~~~~~~~
> The easy way is to go to the web page, which should be self-explanatory:
>        http://www.haskell.org/ghc/
> We supply binary builds in the native package format for many
> platforms, and the source distribution is available from the same
> place.
> Packages will appear as they are built - if the package for your
> system isn't available yet, please try again later.
> Background
> ~~~~~~~~~~
> Haskell is a standard lazy functional programming language; the
> current language version is Haskell 98, agreed in December 1998 and
> revised December 2002.
> GHC is a state-of-the-art programming suite for Haskell.  Included is
> an optimising compiler generating good code for a variety of
> platforms, together with an interactive system for convenient, quick
> development.  The distribution includes space and time profiling
> facilities, a large collection of libraries, and support for various
> language extensions, including concurrency, exceptions, and foreign
> language interfaces (C, whatever).  GHC is distributed under a
> BSD-style open source license.
> A wide variety of Haskell related resources (tutorials, libraries,
> specifications, documentation, compilers, interpreters, references,
> contact information, links to research groups) are available from the
> Haskell home page (see below).
> On-line GHC-related resources
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Relevant URLs on the World-Wide Web:
> GHC home page              http://www.haskell.org/ghc/
> GHC developers' home page  http://hackage.haskell.org/trac/ghc/
> Haskell home page          http://www.haskell.org/
> Supported Platforms
> ~~~~~~~~~~~~~~~~~~~
> The list of platforms we support, and the people responsible for them,
> is here:
>   http://hackage.haskell.org/trac/ghc/wiki/Contributors
> Ports to other platforms are possible with varying degrees of
> difficulty.  The Building Guide describes how to go about porting to a
> new platform:
>    http://hackage.haskell.org/trac/ghc/wiki/Building
> Developers
> ~~~~~~~~~~
> We welcome new contributors.  Instructions on accessing our source
> code repository, and getting started with hacking on GHC, are
> available from the GHC's developer's site run by Trac:
>  http://hackage.haskell.org/trac/ghc/
> Mailing lists
> ~~~~~~~~~~~~~
> We run mailing lists for GHC users and bug reports; to subscribe, use
> the web interfaces at
>    http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
>    http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
> There are several other haskell and ghc-related mailing lists on
> www.haskell.org; for the full list, see
>    http://www.haskell.org/mailman/listinfo/
> Some GHC developers hang out on #haskell on IRC, too:
>    http://www.haskell.org/haskellwiki/IRC_channel
> Please report bugs using our bug tracking system.  Instructions on
> reporting bugs can be found here:
>    http://www.haskell.org/ghc/reportabug
> _______________________________________________
> Haskell mailing list
> Haskell at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell

More information about the Haskell mailing list