On Wed, 2013-04-24 at 10:56 -0700, Bryan O'Sullivan wrote: > On Wed, Apr 24, 2013 at 10:47 AM, Duncan Coutts < > duncan.cou...@googlemail.com> wrote: > > > I address it briefly in my thesis [1], Section 4.8.2. I think it's a > > fundamental limitation of stream fusion. > > > > See also concat, where the naive fusion-based implementation has quadratic > performance: > > concat :: [Text] -> Text > concat txts = unstream (Stream.concat (List.map stream txts)) > > I've never figured out how to implement this with sensible characteristics > within the fusion framework.
Well of course concatMap is another issue. I address that in section 4.8.3 :-) Summary there is that I don't think it is a fundamental limitation, but certainly we don't do it properly in practice now. I have a suggestion in that section for how we might do it. Duncan _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe