Как спроектировать монадический стек?
Как вы проектируете и строите свои монадические стеки? Впервые мне нужно собрать монадический стек (с использованием преобразователей), чтобы решить реальную проблему, но яЯ не совсем уверен, в которомпорядок сложить трансформаторы. Как вы уже знаете, пока вычисления имеют вид* -> *
в принципе, все может играть роль внутренней монады в преобразователе, таким образом, пара вопросов:
lift . lift . liftIO [...]
? Мои интуитивные ощущения подсказывают, что если преобразователи получают некоторые экземпляры (например, MonadReader, MonadIO и т. Д., Как и большинство преобразователей вmtl
делать), это не должноВ каком порядке я поставил трансформаторы.Мне интересно услышать от опытных Haskellers о лучших практиках или практических правилах.
forever $ print "Thanks!"
A.