On 14/12/09 19:04, Jost Berthold wrote:
> Luca,
>> to use Control.Parallel, you need to download and install two packages,
> deepseq and parallel, from hackage.haskell.org.
> Most likely this will work with cabal, or you just download the two
> tarballs .
cabal install parallel
(assuming you have a working cabal-install)
> The reason is, when packaging "parallel", this package has been removed
> from the GHC core libraries. BTW I am unsure whether this is at all
> clever, since it needs specific GHC support (at least for now - am I
> right here?)
>> In addition, be informed that Control.Parallel.Strategies has been
> heavily restructured just last month (splitting it into deepseq and
> parallel is one of the changes, but not the most fundamental).
> If you want to try examples from GpH publications, you will certainly
> have some problems. parallel-1.x versions containing the original
> definitions are on hackage as well and should work for experiments.
I think it would be a good idea to have a wiki page describing the
differences between the API used in those papers and the current API.
Off the top of my head, the main differences are:
* import Control.Parallel.Strategies, not import Strategies
* seq is now pseq
* rnf is now rdeepseq
* don't use demanding, sparking
Better still would be a selection of recipes or patterns for
parallelising Haskell code.
Anyone feel like tackling this? (I realise I'm the obvious person to do
it, but I'm deep in mid-hack on the parallel GC and don't want to get
too distracted right now).
Cheers,
Simon