But they are not different. The functions in stream-fusion are a drop-in replacement for the ones in Data.List. To quote the package description: "To use, simply import Data.List.Stream in place of Data.List, and hide list functions from the Prelude."
So to put simply: you have two functions. They are semantically equivalent, but one is faster than the other. Why not use the faster one?
So to put simply: you have two functions. They are semantically equivalent, but one is faster than the other. Why not use the faster one?