Coding Challenges in Haskell
What's going on here:
My Reflections on Studying Haskell.
"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).
Resources for Trying Out Haskell (in recommended order)
- First, I want to say I did this because I had to whiteboard in a functional language but I would do it again just for the pleasure. The resources, the folks, the blogs, the books below, all are a fresh feeling compared to whatever other language you usually use. And they are sort of aware Haskell is a persistant but not a trending language so they try harder to be friendly. It was fun, like being a child learning to code in Turtle.
- Before you play around, you will need to install some implementation of Haskell. One very common way is shown in the instructions for sandboxed installation using Stacker.
- Orient yourself to the directions you can go next with Chris Allen's Resource List
- Go from beginner to intermediate with the free, full sized book Learn You a Haskell with awesome illustrations
- As you code, keep checking the hundreds of unannotated examples. Wide-ranging.