Henning Sato von Rosen <henning.von.rosen@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