[Haskell-cafe] First steps in Haskell

Benjamin Franksen benjamin.franksen at bessy.de
Mon Dec 19 17:22:03 EST 2005


On Monday 19 December 2005 12:13, Daniel Carrera wrote:
> Wolfgang Jeltsch wrote:
> >>* There's no way for a new user to figure out how to successfully
> >> run the simplest Haskell program.
> >
> > There is!  "The Hugs 98 User's Guide" and "The GHC User's Guide".
>
> Okay, I stand corrected. I rephrase the concern as "The links that
> say Learn Haskell don't show you how to run a simple Haskell
> program".

Hello,

very interesting exchange, this. It appears you are experiencing some 
(mild) culture shock here. It is typical for people in the Haskell 
community to view things in a rather principled way. A language 
tutorial is supposed to introduce /the language/. If you want to know 
how to compile or execute a Haskell program, well then, look at the 
appropriate tutorial on the /implementation/. At first this may appear 
like deliberately creating hurdles, but it isn't, it's merely the way 
many (though not all) Haskell people tend to think. They take it for 
granted that a new user is at least educated enough to be aware of the 
difference between the language itself, and its concrete implementation 
in the form of an interpretation or a compilation system. , Now 
although it appears you very well know the difference, you just aren't 
used to it being shoved in your face ;-) Well, another quirk is that 
adherence to what is custom (e.g. in other language communities) is not 
viewed as an important value among "lambda folks", at least not if 
there is some general guiding principle that stands against it (in this 
case: the language itself is not to be confused with its concrete 
implementation).

Once SPJ famously called it "wairing the hair shirt", refering to the 
unusual way in which Haskell evolved in an extremely principled way 
(purely functional, lazy) which, for instance, during the first years 
made programming IO quite a challenge... until monadic IO was invented, 
so we(*) could finally do it *right*.

Although I like this attitude very much in principle (pun intended), I 
can see that for newcomers this /can/ be a hurdle and I would recommend 
to tone it down a bit and compromise where it doesn't really do any 
harm -- such as explaining how to load and execute a Haskell program 
(using Hugs for instance) in a beginner's tutorial on (yes) Haskell The 
Language Itself ;-)

Cheers,
Ben

(*) Figuratively speaking. Personally, I didn't know anything about 
Haskell back then.


More information about the Haskell-Cafe mailing list