
22 Dec
2008
22 Dec
'08
11:21 p.m.
I encountered the following code : -- B == Data.ByteString ; L == Data.ByteString.Lazy contents' = B.intercalate B.empty $ L.toChunks contents with a previously unencountered function intercalate. A quick google query later i knew that it's just intersperse & concat nicely bundled and started wondering why anybody would do this, as simple contents' = B.concat $ L.toChunks contents would do (probably nearly) the same. The only thing I am able to come up with is that it somehow helps streamline the memory usage (if it has some meaning). Is there some reason to use intercalate <empty> <list> instead of concat <list> (probably when dealing with non-lazy bytestrings) ? Thx, wman.