
John Meacham wrote:
On Mon, Jan 22, 2007 at 09:37:21PM -0500, Bryan Donlan wrote:
Or you can get the best of both worlds by using Data.ByteString.Lazy :) Even with laziness, all the indirections that String causes hurts performance.
actually, strictness analysis is really good at unboxing things like this, so the indirections probably hurt less than one would initially think.
One thing that's impressed me with the Haskell application I'm currently working on (as I am trying to bully the code into handling 10M rows of data, which must all be kept in memory at once, without keeling over) is how often adding explicit strictness annotations *hasn't* improved performance. I guess this means that GHC's strictness analysis isn't much worse than my own. (and that my algorithms are such crap that issues of laziness/strictness are the least of my problems... :-)