Haskell Hacking: a journal of Haskell programming

Haskell Hacking has moved => Go here.
2006-08-28

More stream fusion

Some benchmarks for the Data.ByteString unstable branch, implementing the new stream fusion system to remove intermediate arrays. GHC does a really good job generating array traversal code using streams. Here's the difference between fps 0.7 and the unstable branch, for a range of fusible array functions:
Yay for rewrite rules! Here's a comparison of the strict and lazy ByteString types, indicating the complexity difference for lazy functions that manipulate on the spine of the lazy ByteString:

/home :: /haskell :: permalink :: rss

About

Real World Haskell

RWH Book Cover

Archives

Recommended

Blog Roll

Syndicate