mod 3 5 ==> 3flip is generally used in place of a lambda expression, when constructing a specialized function:
flip mod 3 5 ==> 2
map (\x -> mod x 17) [1..] -- with lambdaUnfortunately, my brain really doesn't like that reversal. When reading any non-trivial expression using flip, I have to stop and think about which argument is now where.
map (flip mod 17) [1..] -- with flip
I've found that I prefer sections. You need to have one of the arguments handy, but I find that's often the case:
map (`mod` 17) [1..] -- with sectionI like this form better because it preserves the visual ordering of the arguments, which seems to be deeply seated in my reasoning process. Because of Haskell's flexibility with switching between prefix and infix application, it's easy for me to adopt a style to suit this preference.