
On Thu, 2007-03-01 at 00:22 +0000, Claus Reinke wrote:
The main example of course is ByteString fusion as presented in our recent paper: http://www.cse.unsw.edu.au/~dons/papers/CSL06.html
btw, why did you restrict yourself to improving [Char], rather than [a]?
We're not finished! :-) It's just the way our investigation took us. We started with an important special case. It's clear now that we can generalise. Note that when we started the ByteString work it was using quite a bit of C code and C-like Haskell code. It looked at first like most of the advantages were from the specialised representation.
naively, it would seem to me that most of the framework should work just as well for the general case, with some additional improvements through specialising a to Char.
Yes, as we say in the paper, we think that the fusion framework should work for any kind of sequence data structure.
and if that is the case, it hurts to think that there is a nice framework out there that i can't use unless my a is Char.
We're now looking at stream fusion for lists in general and as Don says, there's also the NDP work which is looking at arrays of arbitrary element type and with complex structure. Duncan