Reading A Monad Tutorial (Re: [Haskell-cafe] Ode from a Haskeller to a Schemer)

Ketil Malde ketil at
Mon Jul 7 04:21:33 EDT 2008

(With apologies to Queen.)

Is this the RealWorld#?
Is this I/O I see?
Caught in a monad - 
No escape back to purity

Open a file, it wipes out my smile to see
I'm just a programmer, don't need a Ph.D
I'm easy come, easy go
Don't need this high brow
weird monadic action, no real reaction
for me, from G-HC

Hey man, I just found out that
it is easy to achieve
using unsafeInterleave
and unsafe...PerformIO
but people tell me I should let those go
Oh man, no-o-o
I'm about to start to cry
If I can't make this stuff compile tomorrow
I will just carry on
Nothing really matters.

Too late - 'cause I got it now
there are monads all around
IO, State and lists abound
It's easy, like those people say
but my program got abstracted all away!
Maybe - o o o, 
It's a monad too, I know
Why should I use another language at all?

If I haven't seen further, it is by standing in the footprints of giants

More information about the Haskell-Cafe mailing list