Dlaczego w Haskell nie ma transformatora IO?

Każda inna monada jest dostarczana z wersją transformatora iz tego, co wiem, pomysł transformatora jest ogólnym rozszerzeniem monad. Podążając za budową innych transformatorów,IOT byłoby coś takiego

newtype IOT m a = IOT { runIOT :: m (IO a) }

dla których mogłem wymyślić przydatne aplikacje na miejscu:IOT Maybe może wykonać akcję we / wy lub nic,IOT [] może zbudować listę, która może być późniejsequencere.

Dlaczego w Haskell nie ma transformatora IO?

(Notatki: Widziałemten post na Haskell Cafe, ale nie mogę tego zrozumieć. Również,strona Hackage dla transformatora ST wspomina o ewentualnym powiązanym problemie w swoim opisie, ale nie podaje żadnych szczegółów.)

questionAnswers(1)

yourAnswerToTheQuestion