[Haskell-cafe] how to break foldl' ?
lemming at henning-thielemann.de
Fri Sep 30 11:14:54 EDT 2005
On Fri, 30 Sep 2005, gary ng wrote:
> Once again, many thanks to all who taught me about
> this small little problem. Don't even know there is
> init/last and thought there is only head/tail.
> But just for my curiosity, would the takeWhile still
> store the intermediate result till my result is
> reached ? If so, and my list is really very long(and I
> need to go to 1/2 of its length), I would still use a
> lot more memory than imperative method or even the
> foldl one(where in both case, I just take one element)
If you don't trust the compiler you can at least test if the rest of the
list is ignored: Run with an infinite list.
last (takeWhile (<10) (scanl (+) 0 (repeat 1)))
More information about the Haskell-Cafe