how to convert IO String to string---- still have questions
Glynn Clements
glynn.clements@virgin.net
Sun, 24 Nov 2002 20:42:31 +0000
Nick Name wrote:
> This approach is called "monads" and is needed because haskell is a lazy
> language, so order of evaluation is unspecified, while input/output
> usually needs a precise order of evaluation.
It is needed because Haskell is a functional language, where functions
are referentially transparent, so the result of applying a function to
an argument depends only upon the function and the argument, and not
upon some hidden "state".
Even if Haskell were strict, you still wouldn't be able to treat I/O
operations as functions without discarding referential transparency.
> Maybe someone has to suggest some simple article on monads.
"What the hell are Monads?"
http://www.dcs.gla.ac.uk/~nww/Monad.html
--
Glynn Clements <glynn.clements@virgin.net>