
13 Feb
2013
13 Feb
'13
12:50 p.m.
Oops, you're right. Sorry for my oversight. On 13/02/13 08:12, Ertugrul Söylemez wrote:
Mateusz Kowalczyk
wrote: A less obvious interpretation is to treat ($) as `id'.
(f . g) x = f $ g x = f (id g x) = f (g x)
This is not how you get from ($) to id. The correct path is:
f $ x = ($) f x = f x = id f x = f `id` x
This equivalence is indicated by the type of ($). It's a specialized instance of a -> a:
($) :: (a -> b) -> (a -> b) ($) f = f
or equivalently:
($) :: (a -> b) -> a -> b ($) f x = f x
or equivalently:
($) :: (a ~ b -> c) => a -> a ($) = id
Greets, Ertugrul
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners