[Haskell-cafe] Re: How did you stumble on Haskell?

John Goerzen jgoerzen at complete.org
Tue Jan 30 16:29:42 EST 2007


On 2007-01-29, Alexy Khrabrov <deliverable at gmail.com> wrote:
> How do people stumble on Haskell?  I've taught ML at UPenn, and many

Fascinating thread.

Awhile back, I decided that, once I got familiar and comfortable with a
programming language, I would learn a new one.  I tend a learn a new
language every 1-3 years on average.

I had been a convert from Perl to Python a few years back.  I got
comfortable with Python and decided I want to learn a new language.  I
looked at a number of them.  Rejected Ruby because it was too much like
Python, Erlang because it didn't seem general-purpose enough, Haskell
because its library seemed small at the time and the focus too academic.
I eventually learned OCaml.

OCaml was an interesting experience.  It had some nice features.  But
I/O was absolutely infruriating.  OCaml's default I/O system can't
handle files opened read-write, for instance.  It also has two distinct
list-like types: one that's lazy, one that's not, and they require two
distinct sets of functions to work with.  The object system also is
complicated.  The syntax and whole idea of .ml vs. .mli file felt very
dated and the build system was extremely difficult to get right.

So I again searched out a language, with largely the same results for
everything except Haskell.  I can't remember exactly what changed my
mind about Haskell.  It may have been Cabal, it may have been Darcs, or
something else.  In any case, I decided to pick it up.  I was pleasantly
surprised that Haskell seemed to have all the things I liked from both
Python and OCaml and none of the annoying things from either.

It's been a fun experience.  Haskell is the only language I've ever
learned in which I have used it for something like 2 years, written
numerous applications, developed several libraries, even written links
to C and Python, and still consider myself a newbie.

And that is a GOOD thing.

-- John



More information about the Haskell-Cafe mailing list