Wouter Swierstra <wss at Cs.Nott.AC.UK> writes:
> * Bernie Pope - Getting a Fix from the Right Fold
i ended up with this one:
dwBool predicate l = (foldr combine (\_ -> []) l) True
where
combine e fl beg = if beg && predicate e
then fl True
else e : fl False
higher-order, like solutions 3 & 4, but simpler IMO :p