[Haskell-cafe] IO is a bad example for Monads
Hans van Thiel
hthiel.char at zonnet.nl
Tue Dec 11 13:32:29 EST 2007
On Tue, 2007-12-11 at 16:56 +0100, Wolfgang Jeltsch wrote:
> Am Dienstag, 11. Dezember 2007 14:46 schrieb Hans van Thiel:
> > On Mon, 2007-12-10 at 20:00 +0100, Henning Thielemann wrote:
> > [snip]
> > > I raise my question once again: Must Haskell's tutorials be tailored to
> > > impatient programmers? Does Haskell need quick&dirty hackers?
> > IMO yes, because it exposes the language to the outside world and that's
> > a form of testing. In the end, anything that's not usable is useless.
> > Paraphrasing a quote about science in general, "There is nothing about
> > Haskell that cannot be grasped by a second rate mind through
> > persistence." Let's not exaggerate how difficult and special it all is.
> > And the purpose of a tutorial is not to make the writer look smart and
> > important, but to ease things for the reader. I wouldn't want to exclude
> > the scurrilous unwashed from the Haskell experience, this close to
> > Christmas, too. :-)
> > Regards,
> > Hans van Thiel
> Maybe there are also patient people in the outside world so that we can still
> expose Haskell to the outside world while not trying to attract
> quick-and-dirty hackers. ;-)
But who are those people? And what harm can they possibly do, assuming
they fit the derogatory description?
> Haskell is not a quick-and-dirty language but quite the opposite. Haskell’s
> unique selling propositions are features like type classes, higher order
> functions and lazy evaluation which make life easier in the long term. The
> downside of these features is that they might make life harder in the short
I don't know. In a sense Haskell is easier than, for example, C, because
the concept of a function definition is more natural that that of
assignments and loops. The idea that x = 5; x = x + 7 makes sense
requires a complete new way of thinking. OK, once you've been doing it
for a few years switching back to x = 5 + 7 is hard.
I guess I do agree with you on lazy evaluation..
> That said, I definitely think that we should make learning the language as
> easy as possible. But our ultimate goal should be to primarily show
> newcomers the Haskell way of problem solving, not how to emulate Python or
> Java programming in Haskell.
Again, is there a danger of that happening?
> Best wishes,
More information about the Haskell-Cafe