To my question of
  
>>  foldlWhile :: (a -> b -> a) -> (a -> Bool) -> a -> [b] -> a
>>  foldlWhile    f                p              a    bs  =
>>    case
>>        (bs, p a)
>>    of
>>    ([],    _    ) -> a
>>    (_,     False) -> a
>>    (b:bs', _    ) -> foldlWhile f p (f a b) bs'
>> 
>> foldl  does not seem to cover this.


Dylan Thurston wrote: On Nov 20, 2004 

> An alternative is
> 
>   foldlWhile f p a bs = last $ takeWhile p $ scanl f a bs
> 


Yes. Thank you. 
Inspecting Prelude, we find out that  scanl  expresses, mainly, 
the thing.

-----------------
Serge Mechveliani
[EMAIL PROTECTED]



_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to