I noticed as I was playing around with Haskell today that it is possible to do something like
($ 4) (> 3)
which yields True
($ 4)
is the function that takes a function and applies 4
to it.
(> 3)
is the function that takes a number and checks if it is greater than 3.
So by giving the latter function to the former, you are essentially applying 4
to the function that checks if its input is greater than 3
, and thus you get True
.