[Haskell-cafe] Why does `flip` cause function type so different ?
zaxis
z_axis at 163.com
Thu Mar 18 23:34:53 EDT 2010
>let f x xs = [x:xs,xs]
> :t f
f :: a -> [a] -> [[a]]
>:t (>>=) .f
(>>=) .f :: a -> ([[a]] -> [a] -> b) -> [a] -> b
> :t (flip (>>=) .f)
(flip (>>=) .f) :: a -> [[a]] -> [[a]]
Why is the type of `(>>=) .f` and `flip (>>=) .f` so different ?
Sincerely!
-----
fac n = let { f = foldr (*) 1 [1..n] } in f
--
View this message in context: http://old.nabble.com/Why-does-%60flip%60-cause-function-type-so-different---tp27950886p27950886.html
Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.
More information about the Haskell-Cafe
mailing list