[Haskell-beginners] How to think in Haskell

David Virebayre dav.vire+haskell at gmail.com
Fri Dec 17 13:10:45 CET 2010


2010/12/16 Brent Yorgey <byorgey at seas.upenn.edu>:
> On Thu, Dec 16, 2010 at 04:41:24PM +0100, Luca Ciciriello wrote:
>> Hi, here my path (in correct order) I followed to learn to think functionally:

>> 1) Curry-Howard Isomorphism
>> 2) Type Theory & Functional Programming
>> 3) The Hindley-Milner Type inference algorithm
>> 4) Basic Category Theory
>> 5) Notions of computation and monads
>> 6) Denotational semantics
>> 7) Monads for functional programming
>> 8) Theorems for free.
>> 9) A History of Haskell: Being Lazy With Class

> These are all wonderful topics.  But I strongly disagree with the
> notion that one must understand all of these before even starting a
> Haskell tutorial (!), or even that one must understand all of these to
> be able to "think functionally" in some sense.

... aaaaand I'm going to agree with Brent here.

It took me a while to have many things "click", but I found it hard to
thoroughly read many papers. The mathematical notation which I'm not
familiar with often is a problem to stay focused.

What helped for me was reading tutorials and practice. Reading about
people's problems on Café, and reading the replies. Re-reading several
times a tutorial, weeks apart. I wish I had Real world haskell was I
was starting, but I have it now and I'm glad I do.

I can't claim I understand more than Haskell 98, but it's more than
enough for a start.

David.



More information about the Beginners mailing list