[Haskell-cafe] Re: bytestring vs polymorphic contiguous lists

Duncan Coutts duncan.coutts at worc.ox.ac.uk
Thu Mar 1 05:21:49 EST 2007


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



More information about the Haskell-Cafe mailing list