[Haskell-cafe] A Question about IO monad
Marcin Mrotek
marcin.jan.mrotek at gmail.com
Sun Mar 1 14:27:15 UTC 2015
But this is exactly the point: there can be no total, generic function of type
f :: Monad m => m a -> a
(though there is for a Comonad ;))
As for Zongzhe Yuan's original question, i thinks it's safe to think
of a value of type (IO a) as a program that, when executed, will
result in a value of type a. This program can be copied, stored in a
variable, passed to another thread, etc. It will only be actually
executed when (perhaps after being combined with other IO programs)
bound to the main program.
Kind regards,
Macin Mrotek
More information about the Haskell-Cafe
mailing list