I have a naive question regarding the basic use of the $ operator, and I am confused why certain times it doesn't seem to work.
e.g.
The following works:
applySkip i f ls = (take i) ls ++ f (drop i ls)
But the following doesn't:
applySkip i f ls = (take i) ls ++ f $ drop i ls