Por que não há nenhum transformador IO em Haskell?
Todas as outras mônadas vêm com uma versão de transformador e, pelo que sei, a ideia de um transformador é uma extensão genérica de mônadas. Seguindo como os outros transformadores são construídos,IOT
seria algo como
newtype IOT m a = IOT { runIOT :: m (IO a) }
para o qual eu poderia inventar aplicações úteis no local:IOT Maybe
pode fazer uma ação de IO ou nada,IOT []
pode construir uma lista que pode ser mais tardesequence
d.
Então, por que não há nenhum transformador IO em Haskell?
(Notas: eu vieste post no Haskell Cafe, mas não pode fazer muito sentido disso. Além disso,a página do Hackage para o transformador ST menciona um problema possivelmente relacionado em sua descrição, mas não oferece nenhum detalhe.)