[Haskell-cafe] IO is a bad example for Monads

Wolfgang Jeltsch g9ks157k at acme.softbase.org
Mon Dec 10 14:09:31 EST 2007

Am Montag, 10. Dezember 2007 19:44 schrieb Dan Piponi:
> […]

> Maybe hardened Haskell programmers don't notice these things, but
> there's a wall that goes up when Haskell is presented to
> non-functional programmers. There are significant barriers for them to
> cross (some of them imaginary):

That’s inavoidable if they want to learn a language which will finally be 
advantageous for them.  If they just want another Perl or Python then there 
is no point in presenting Haskell to them.

> there's the infamous type system,

You need them to get to recognize that a powerful static type system is a very 
good thing (which helps solving practical problems).

> there's the mystique around monads,

We should just say: “warm fuzzy thing”. ;-) 

> there's the fear that laziness can impact performance,

Hmm, tell them that performance isn’t all and that laziness helps you to write 
more modular programs.

> the general fear that many ordinary programmers have about recursion,

Then they might not be good programmers.

> and so on.


> Giving people even the slightest reason to think that there's something
> weird about opening files or printing a result is just another brick in that
> wall, and it's probably the biggest brick of all.

You’re right, of course.  However, finally they should arrive at the point 
where they see that sometimes there are better tools than the IO type.

> Dan

Best wishes,

More information about the Haskell-Cafe mailing list