[Haskell-cafe] Building "production stable" software in Haskell
J. Garrett Morris
trevion at gmail.com
Thu Sep 13 15:22:09 EDT 2007
I believe that rnf from the Control.Parallel.Strategies library
shipped with GHC 6.6.1 is equivalent to deepSeq, as in:
x `deepSeq` y is equivalent to rnf x `seq` y
On 9/12/07, Peter Verswyvelen <bf3 at telenet.be> wrote:
> Thanks for all the info.
> It's really good news that code coverage is now part of the GHC compiler!
> Any more info on that "deep seq"? I can't find it in the libraries that come
> with GHC 6.6.1. It seems to be part of Control.Strategies.DeepSeq of HXT.
> This is a separate download?
> Intuitively, I would say "deep seq" forces strict evaluation of the complete
> "graph" of its first argument? Is this correct?
> -----Original Message-----
> From: Don Stewart [mailto:dons at galois.com]
> Sent: Tuesday, September 11, 2007 10:11 PM
> To: Peter Verswyvelen
> Cc: Neil Mitchell; Haskell-Cafe
> Subject: Re: [Haskell-cafe] Building "production stable" software in Haskell
> > Well, I actually meant more something like the imperative equivalences
> > of "code coverage tools" and "unit testing tools", because I've read
> > rumors that in Haskell, unit testing is more difficult because lazy
> > evaluation will cause the "units" that got tested to be evaluated
> We have full control over evaluation though, with bang patterns, seq and
> deep seq.
> Generally unit testing is generalised to property testing with QuickCheck,
> For code coverage, combined with testing, use HPC, the program coverage tool
> now in GHC head.
> -- Don
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
The man who'd introduced them didn't much like either of them, though
he acted as if he did, anxious as he was to preserve good relations at
all times. One never knew, after all, now did one now did one now did
More information about the Haskell-Cafe