[Haskell-cafe] Why no IO transformer monad?
Keean Schupke
k.schupke at imperial.ac.uk
Mon Dec 20 04:20:52 EST 2004
What about:
runIOT :: Monad m => IOT m a -> IO (m a)
Keean.
Udo Stenzel wrote:
>Henning Sato von Rosen <henning.von.rosen at gmail.com> schrieb am 18.12.04 18:31:11:
>
>
>>For each basic monad there seems to be a corresponding transformer,
>>e.g. 'StateT' for 'State' and so on.
>>
>>
>
>To be useful every transformer has a "run" method of some kind. For a hypothetical
>IO transformer it would look like
>
>runIOT :: Monad m => IOT m a -> m a
>
>...which is basically the same as unsafePerformIO and defeats the purpose of
>having an IO Monad at all. If you want to retain the IO-type in the result, then
>you don't need IOT at all, layering any transformer on top of IO is exactly what's
>needed.
>
>
>Udo.
>
>__________________________________________________________
>Mit WEB.DE FreePhone mit hoechster Qualitaet ab 0 Ct./Min.
>weltweit telefonieren! http://freephone.web.de/?mc=021201
>
>_______________________________________________
>Haskell-Cafe mailing list
>Haskell-Cafe at haskell.org
>http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
More information about the Haskell-Cafe
mailing list