Можно ли сделать монаду IO из Haskell в Clojure?
Я посмотрел наalgo.monads а такжеfluokitten документация. Я также прочитал записи блога монадыДжим дуэй, Конрад Хинсен а такжеЛеонардо Борхес.
Ближайшее, что я могу найти, этоБиблиотека Конрада Хинсена Монадические потоки ввода-вывода - но это не похоже на «реализацию интерфейса монады» (из-за отсутствия лучшей формулировки)
Это пример использования ST в Haskell
oneST :: ST s Int -- note that this works correctly for any s
oneST = do var <- newSTRef 0
modifySTRef var (+1)
readSTRef var
one :: Int
one = runST oneST
Мой вопрос:Можно ли сделатьIO Monad из Хаскелла в Clojure? Не могли бы вы привести пример?