It allows some incredibly powerful concepts to be expressed unambiguously with little syntax.
However I certainly agree that the lack of obvious markers for what a function call involves is painful. (For instance `$` is nonsensical in a C-like language but very useful in Haskell)