[Haskell-cafe] how to break foldl' ?
u.stenzel at web.de
Fri Sep 30 15:23:59 EDT 2005
gary ng wrote:
> Still a bit confused.
> My function is simply
> f x y = if x < 100 then x + y else x
sum_to_100 xs = foldr (\x k a -> if a < 100 then k $! (x+a) else a) id xs 0
As expected, (sum_to_100 [1..]) gives 105, without trying to find the
end of an infinite list. You get your early-out semantics combined with
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: Digital signature
Url : http://www.haskell.org//pipermail/haskell-cafe/attachments/20050930/03ed4d60/attachment.bin
More information about the Haskell-Cafe