[Haskell-beginners] Is there an idiom for this?
raabe at froglogic.com
Mon Nov 16 12:10:44 UTC 2015
On 2015-11-16 12:44, Mark Carter wrote:
> Suppose I want to use an argument twice, as for example in the expression:
> (\x -> (pred1 x) and (pred2 x))
> Is there a shorter way of doing this?
I suppose you meant to write '&&' instead of 'and'?
You can write it in an applicative style as
(&&) <$> pred1 <*> pred2
If you like, you can shorten that a bit using 'liftA2' as
liftA2 (&&) pred1 pred2
but I personally tend to like the former version better.
Frerich Raabe - raabe at froglogic.com
www.froglogic.com - Multi-Platform GUI Testing
More information about the Beginners