foo (bar (baz (etc x)))
That's ok in Lisp where the parens become invisible, but parens are infrequent enough in Haskell that they're ugly. So they provide an "apply" operator that just has different binding rules, and the above can be written:
foo $ bar $ baz $ etc x
but the dollar signs are huge! If it were colon, it could be written like this
foo: bar: baz: etc x
Where the colon instinctively means: "I'm done supplying arguments to this function; everything to the right of here is its final argument."