<div class="gmail_quote">On Fri, Aug 13, 2010 at 4:24 PM, Kevin Jardine <span dir="ltr">&lt;<a href="mailto:kevinjardine@gmail.com">kevinjardine@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

I&#39;m interested to see this kind of open debate on performance,<br>
especially about libraries that provide widely used data structures<br>
such as strings.<br>
<br>
One of the more puzzling aspects of Haskell for newbies is the large<br>
number of libraries that appear to provide similar/duplicate<br>
functionality.<br>
<br>
The Haskell Platform deals with this to some extent, but it seems to<br>
me that if there are new libraries that appear to provide performance<br>
boosts over more widely used libraries, it would be best if the new<br>
code gets incorporated into the existing more widely used libraries<br>
rather than creating more code to maintain / choose from.<br>
<br>
I think that open debate about performance trade-offs could help<br>
consolidate the libraries.<br>
<br>
Kevin<br></blockquote></div><br>I agree.<br><br>Here&#39;s a rule of thumb: If you have binary data, use Data.ByteString. If you have text, use Data.Text. Those libraries have benchmarks and have been well tuned by experienced Haskelleres and should be the fastest and most memory compact in most cases. There are still a few cases where String beats Text but they are being worked on as we speak.<br>

<br>Cheers,<br>Johan<br><br>