On Feb 17, 2008, at 19:23 , Chad Scherrer wrote:
On Feb 17, 2008 4:13 PM, Brandon S. Allbery KF8NH
<[EMAIL PROTECTED]> wrote:
Have you looked at the stream-fusion package on Hackage?
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/stream-
fusion-0.1.1
Yeah, I've seen this. It's nice that this is separated, but a little
unsatisfying that the bytestring library reimplements it rather than
just requiring it as a dependency. This, and the fact that bytestrings
are way fast, while the stream-fusion stuff is sometimes slower than
just using lists, make me think that either (1) there's sometimes an
advantage in programming directly to streams, or (2) maybe more of the
stream functions need to be exposed in the API. Or maybe there's
another reason... that's part of my question.
You should be able to find discussion of this here if you search for
"stream fusion". The short version, IIRC, is that (a) this is still
an area of active research, with the above lagging behind the current
work which is usually in current bytestrings; (b) the spinoff library
at times conflicts badly with the existing ghc RULEs for lists, and I
think some changes to the way ghc applies RULEs are going to happen
at some point in order to ameliorate this. (ghc's current handling
of RULEs, inlining, and build/foldr etc. is a bit ad hoc and needs to
be given structure so that it is possible to accurately control when
and how they are applied. This also has been discussed, either here
or on [EMAIL PROTECTED])
Don Stewart, Duncan Coutts (streams), and Simon Peyton-Jones (ghc)
should be able to give details on this stuff, and hopefully one or
more of them will jump in to correct any misrecollections or errors
I've made.
--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] [EMAIL PROTECTED]
system administrator [openafs,heimdal,too many hats] [EMAIL PROTECTED]
electrical and computer engineering, carnegie mellon university KF8NH
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe