Вопросы по теме 'reader-monad'
Haskell — глубина для каждого узла в бинарном дереве с использованием монады Reader
Я написал следующий код. Он работает и использует монаду Reader .
Не могли бы вы дать мне несколько советов о стиле кода в Haskell? В основном я имею в виду монады - я новичок.
import Control.Monad.Reader
data Tree a = Node a (Tree a) (Tree...
806 просмотров
schedule
27.07.2023
Зачем определять параметр конструктора Reader как функцию?
Изучая Монаду Читателя, я обнаружил, что она определяется как:
newtype Reader r a = Reader { runReader :: r -> a }
instance Monad (Reader r) where
return a = Reader $ \_ -> a
m >>= k = Reader $ \r -> runReader (k (runReader m...
167 просмотров
schedule
01.11.2022
Модификация внутреннего считывателя в стеке-трансформере
Я собираю код из разных мест и пытаюсь решить следующее:
Проблема
У меня есть стек трансформатора следующего упрощенного типа:
action :: m (ReaderT r IO) a
и я пытаюсь использовать действие в контексте другого стека, который имеет...
122 просмотров
schedule
06.08.2022
Уточнение монады чтения
Я пытаюсь понять монаду читателя, но, кажется, не могу понять, что делает bind (>>=) в этой монаде.
Вот реализация, которую я анализирую:
newtype Reader e a = Reader { runReader :: (e -> a) }
instance Monad (Reader e) where
return a...
252 просмотров
schedule
04.06.2023
Reader Monad - объяснение тривиального случая
Я пытался разобраться с монадой читателя и наткнулся на это руководство . В ней автор представляет такой пример:
example2 :: String -> String
example2 context = runReader (greet "James" >>= end) context
where
greet :: String...
1049 просмотров
schedule
04.01.2023
Как внедрить зависимости через Scala Reader из кода Java
Вот служба зависимости:
public class Service1 {}
Код Scala, который использует его через считыватель:
object TupleEx {
type FailFast[A] = Either[List[String], A]
type Env[A] = ReaderT[FailFast, Service1, A]
import...
89 просмотров
schedule
20.07.2022
f, g, h :: Клейсли ((-›) e) a b ‹=› f ››› (g &&& h) = (f ››› g) &&& (f ››› h)?
Изменить: мы будем называть стрелку p чистой, если существует такая функция f , которая: p = arr f .
Я пытаюсь лучше понять Arrows в Haskell и хочу выяснить, когда
f >>> (g &&& h) = (f >>> g) &&& (f...
184 просмотров
schedule
04.02.2023
Как мне запустить этот метод с MonadReader и MonadIO?
Я слежу за этот пост о монаде чтения в Haskell.
Он начинается с определения:
load :: Config -> String -> IO String
load config x -> readFile (config ++ x)
Где Config — это псевдоним типа для String, представляющий имя каталога....
164 просмотров
schedule
25.02.2023
Не удалось вывести MonadReader в обертке ReaderT
Следуя и адаптируя эту запись в блоге , я пытался создайте решение, которое должно позволять тестировать функцию, которая читает env vars (используя System.Environment.lookupEnv ).
Таким образом, я должен иметь возможность внедрить искусственную...
59 просмотров
schedule
22.12.2023