Would it be a good or bad idea to make dropWhile try to fuse?
Joachim Breitner
mail at joachim-breitner.de
Sat Jul 26 08:34:28 UTC 2014
Hi,
Am Freitag, den 25.07.2014, 00:35 -0400 schrieb David Feuer:
> This is generally awful, because it could copy a large portion of the
> list with no benefit. However, if it fuses, it will sometimes give
> good results. For example, compiling
>
> f m n = foldr (+) 0 $ dropWhile (<m) $ map (+1) [1..n]
>
> yields Core that does not produce a intermediate list. Does anyone
> have any thoughts about whether this one is worth pursuing?
in general, I’d be doubtful about this.
I guess it shouldn’t happen unless it fuses on both sides (as then there
is no sharing, is it?) which is probably not easily expressible with
RULES.
Greetings,
Joachim
--
Joachim Breitner
e-Mail: mail at joachim-breitner.de
Homepage: http://www.joachim-breitner.de
Jabber-ID: nomeata at joachim-breitner.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://www.haskell.org/pipermail/libraries/attachments/20140726/f2bfd80e/attachment.sig>
More information about the Libraries
mailing list