Wed Jan 19 18:04:50 EST 2011

Is Haskell just too difficult?

I don't quite get it yet.  Sometimes type inference doesn't seem to
work and I have no clue as to why and no clue about how to make it
explicit either.  Seems I'm doing a bit too much at once: type class
stuff and the basic idea of monadic sharing.

I'm in the stage where Haskell still seems to suffer from a "move the
problem elsewhere" issue.  Of course, pure functional programs are
really nice.  Types that tell you things about those programs are also
nice.  Things that tell you things about types are also nice.  Gluing
all these things together and making them do what you want is a bit of
a bumpy ride though.  Granted, the result (when you manage to express
yourself properly) is often very good, but preventing the programmer
to write the program in the first place is maybe not such a good

Anyway, to be fair, I probably need to first gain more basic
understanding it before I give up.  But it seems that, at least from a
point of "less fuss, just functionality" an approach in Scheme using
macros to solve the "input problem", and abstract interpretation
implemented with the Racket unit system and _simply using plain old
side effects_ would probably be a better fit for my mind.

But hey, maybe I finally get it one of these days.

For later reference: here's a paper that bridges "real" state and
monads from a Scheme perspective[2].

[1] http://lambda-the-ultimate.org/node/92
[2] http://www.cs.indiana.edu/hyplan/jsobel/Parsing/explicit.pdf