Coding Challenges in Haskell
What's going on here:
"Thinking functionally" in the beginning is an extension of GNU/BASh tools and pipes. In Haskell, dollar sign ($) is a pipe flowing from right to left and dot (.) is a pipe for just verbs.
Compared to learning Elm language, the Haskell tutorials are less restricted to the DOM and web development so they unleash a lot of beauty. For example, recursive programming is suddenly useful.
I can read type notation half of the time. Crucially, I often cannot read it in the compiler error messages. And can rarely write it. One trick for writing it is to play around in GHCi and then let GHCi tell me the types, using (:t).