
On Mon, Nov 19, 2007 at 10:17:56AM +0000, Malcolm Wallace wrote:
1) Where does the basic unfolded sequence type, described in the stream fusion paper live?
Why not have a Data.Fusion.* hierarchy and put everything having to do with stream fusion there?
It seems perfectly reasonable to me that ordinary users might want to program directly with this data structure, whether or not it ends up being fuseable.
The problem with a name like "Data.Fusion" is that it describes the thing that the compiler does with this data structure, rather than the data structure itself.
My suggestions for names would therefore be: Data.Unfold Data.Step Data.Pump
How about Control.Stream? The stream-fusions combinators are in some way trying to capture the order of operations, while Wouter et al's Data.Stream is plain data. Stefan