[Haskell-cafe] RE: Haskell as a first language?
jno at di.uminho.pt
Sat Nov 7 12:27:36 EST 2009
Duncan Coutts wrote:
>On Tue, 2009-07-14 at 03:01 -0700, Michael Vanier wrote:
>>Haskell is a wonderful language (my favorite language by far) but it is
>>pretty difficult for a beginner. In fact, it is pretty difficult for
>>anyone to learn in my experience, because it has so many advanced
>>concepts that simply don't exist in other languages, and trying to
>>absorb them all at once will likely be overwhelming.
>As a contrary data-point, at Oxford we teach functional programming
>(using Haskell) as the first course at the very beginning of the
>computer science degree. I know several other universities also use FP
>and Haskell very early on in their CS courses.
At Minho we've been using Haskell as first programming course in CS
degrees since 1997-98. Such a 'functional first' approach is the natural
way to start a background on programming. Look at the hardware side, for
instance: which of the following kinds of digital system is taught
first: combinatorial (eg. nand, nor gates) or sequential (eg.
flip-flops)? The first, of course, because such circuits are functional
(no state, no feedback).
More recently I had a go at teaching Haskell to beginners in a non CS
context (to arts students studying musicology, actually). If you are
interested, have a look at the slides available from the course's URL:
(Under Acrobat some scores will start playing music once you click the
"pin" symbol on the right.)
All comments, suggestions etc are welcome.
More information about the Haskell-Cafe