Thanks again!

The last part I cant understand:
So I give it for example
zipWith ($) (map (\x -> map (const x)) (cycle [True, False])) [[1,2],[3]]

Okay, because of ($) it takes the first element of the last part which is [1,2] and apply the function on it
But how makes this: map (\x -> map (const x)) (cycle [True, False])
[True,True] from [1,2]?
Then he takes [3] but how makes [False] from that?

It easily can be that my functional programming knowledge isn't enough to understand this and maybe I misunderstood it already. But I hope I'll be able to do so..

Thanks:
Maur Toter

so

On Sat, Apr 3, 2010 at 4:31 PM, Edward Z. Yang <ezyang@mit.edu> wrote:
Excerpts from Maur Toter's message of Sat Apr 03 10:29:34 -0400 2010:
> What does the ($) at zipWith?

($) is function application

Prelude> :t ($)
($) :: (a -> b) -> a -> b

Cheers,
Edward