
If you mean is there any f and z for which this can be done with only
"foldr f z xs", I believe the answer is no. If you don't mind extra parts,
though:
findAdjacent :: (Eq a) => [a] -> Maybe a
findAdjacent xs = foldr f Nothing $ zip xs ps
where
ps = zipWith (==) (tail xs) xs
f (x,p) next = if p then Just x else next
On Mon, Feb 1, 2016 at 11:15 PM, Chul-Woong Yang
Hi, all.
Can it be possible to do fold with short circuit and accumulator both? For example, can we find an element which is same value to adjacent one?
findAdjacent [1,2..n, n, n+1, n+2.......] => n \__very long__/
Though there can be many ways to do it, Can we do it with fold[r|l]?
I'll be happy to receive any comments.
Chul-Woong _______________________________________________ Beginners mailing list Beginners@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners