I can pinpoint the exact page in Real World Haskell where I became lost. I was reading along surprisingly well until page 156, upon introduction of
At that my point my smug grin became a panicked grimace. The next dozen pages were an insane downward spiral into the dark labyrinth of Haskell's type system. I had just barely kept
class and friends straight in my mind.
type I managed to ignore completely.
newtype was the straw that broke the camel's back.
As a general rule, Haskell syntax is incredibly impenetrable.
<-? I have yet to reach the chapter dealing with
>>=. The index tells me I can look forward to such wonders as
<|>. Who in their right mind thought up the operator named
.&.? The language looks like Japanese emoticons run amuck. If and when I reach the
\(^.^)/ operator I'm calling it a day.
Maybe Lisp has spoiled me, but the prospect of memorizing a list of punctuation is wearisome. And the way you can switch between prefix and infix notation using parens and backticks makes my eyes cross. Add in syntactic whitespace and I don't know what to tell you.
I could still grow to like Haskell, but learning a new language for me always goes through a few distinct stages:
Curiosity -> Excitement -> Reality Sets In -> Frustration -> Rage ...
At Rage I reach a fork in the road: I either proceed through Acceptance into Fumbling and finally to Productivity, or I go straight from Rage to Undying Hatred. Haskell could still go either way.