My comments inlined below... On 9/25/07, Brian Hulley <[EMAIL PROTECTED]> wrote: > let > shiftLeftByThree = shiftL' 3 > in > map shiftLeftByThree [10, 78, 99, 102]
let shiftLeftByThree = (`shiftL` 3) in ... > Can anyone think of an example where the current desugaring of infix > arguments gives the correct order when the function is used in a postfix > application? (apart from commutative functions of course!) A couple off the top of my head: (:) :: a -> [a] -> [a] <|> :: MonadPlus m => m a -> m a -> m a (how do you define "correct" in this case, anyways?) Even for "shift" I can think of several reasons to want to use it both ways; for example, unpacking a bitfield from a Word16: unpack v = (getM 0 255, getM 8 1, getM 9 31, getM 14 3) where getM = (.&.) . (shiftR v) -- ryan _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe