Вопросы по теме 'state-monad'
Стек преобразователя Haskell Monad и подписи типов
Я пытаюсь создать стек преобразователей монад, и у меня возникают проблемы с получением правильных сигнатур типов для моих функций. (Я все еще новичок в Haskell)
Стек объединяет несколько преобразователей StateT, поскольку у меня есть несколько...
3221 просмотров
schedule
23.11.2022
Советы по более элегантному коду с монадами?
Наконец-то я понял, как использовать монады (не знаю, понимаю ли я их...), но мой код никогда не бывает очень элегантным. Я предполагаю, что это из-за отсутствия понимания того, как все эти функции на Control.Monad могут реально помочь. Поэтому я...
1061 просмотров
schedule
04.12.2023
Быстрое обновление большого состояния в Haskell
Для моей библиотеки векторной графики на Haskell я должен носить с собой довольно большое состояние: параметры обводки линии, цвета, путь отсечения и т. д. Я знаю два способа сделать это. Цитируя комментарий из Haskell-cafe : "Я бы предлагаю вам...
2601 просмотров
schedule
31.01.2023
Монада состояния в OCaml
Я пытался реализовать монаду состояния в OCaml (в качестве упражнения). Моя реализация выглядит так:
module type MONAD_BUILDER =
sig
type 'a t
val return : 'a -> 'a t
val bind : 'a t -> ('a -> 'b t) -> 'b t
end;;
module...
2107 просмотров
schedule
19.03.2024
scalaz List[StateT].sequence — не удалось найти неявное значение для параметра n: scalaz.Applicative
Я пытаюсь понять, как использовать StateT для объединения двух преобразователей состояния State на основе комментария к моему Примеры монад состояния Scalaz answer.
Кажется, я очень близок, но у меня возникла проблема при попытке применить...
1359 просмотров
schedule
03.11.2023
haskell - функция состояния монады получить?
один вопрос в соответствии с функцией get государственной монады:
Если я сбегу
runState получить 1
Я получил результат
(1,1)
и это нормально для меня, потому что функция get устанавливает значение результата в состояние, и в...
2467 просмотров
schedule
07.04.2023
что такое правильное понимание монады или последовательности как для отображения, так и для переноса состояния?
Я пишу интерпретатор языка программирования.
Мне нужна правильная идиома кода как для оценки последовательности выражений, чтобы получить последовательность их значений, так и для распространения состояния от одного оценщика к другому по мере...
2105 просмотров
schedule
11.03.2023
Haskell: Как работает put MonadState?
http://hackage.haskell.org/packages/archive/mtl/1.1.0.2/doc/html/src/Control-Monad-State-Lazy.html
instance (Monad m) => MonadState s (StateT s m) where
get = StateT $ \s -> return (s, s)
put s = StateT $ \_ -> return ((), s)...
188 просмотров
schedule
23.04.2022
Как реализовать класс MonadState без использования синтаксиса записи?
Мне трудно понять MonadState .
Причина, возможно, в том, что большинство примеров смешиваются с синтаксисом записей в их структуре данных.
Итак, я попытался реализовать MonadState без использования синтаксиса записи.
Следующий код,...
799 просмотров
schedule
29.06.2022
Монада состояния Scala для понимания
Я изучаю превосходную лекцию Майкла Пилквиста по монаде состояния, здесь . Я застреваю на 54 минуте с двумя вопросами.
Если ofs - это Option[FollowerStats] , что такое оператор ? ? Я не могу найти тернарный оператор в Option в Scala...
1814 просмотров
schedule
04.08.2023
Haskell State Monad и Binary не выводят все
Я играл с простой двоичной кодировкой, и, похоже, по большей части она работала правильно, пока я не добавил монаду состояния. План состоял в том, чтобы использовать состояние для хранения таблицы поиска того, что я записал в байтовую строку до сих...
134 просмотров
schedule
23.11.2022
Использование Maybe с State Monad
Я пытаюсь реализовать очередь FIFO в Haskell с помощью операций push / pop / peek, и это то, что я получил до сих пор.
data Queue a = Queue {
inbox :: [a],
outbox :: [a]
} deriving (Eq, Show)
push :: a -> Queue a -> Queue a
push e...
831 просмотров
schedule
13.08.2022
Обоснование использования ››
В главе Real World Haskell они дают обоснование (>>) следующим образом:
Мы используем эту функцию, когда хотим выполнить действия в определенном порядке, но не заботимся о результате.
Затем они приводят хороший пример,...
174 просмотров
schedule
02.03.2023
Государственная монада — циклы while
Этот вопрос был вдохновлен этим вопросом . Я понимаю пример ( ListBuilder ), но мне не удалось создать цикл while для моей монады состояния. Что мне непонятно, так это как bind тело цикла while loop, когда итерации следуют одна за другой....
499 просмотров
schedule
23.04.2023
Объем государственной монады
Я пытаюсь понять, что происходит в следующем коде, код работает правильно, но я пытаюсь понять почему .
import Control.Monad.State
import System.IO
import System.Environment
echoArgs :: [String] -> State Int [String]
echoArgs x = loopArgs x...
237 просмотров
schedule
22.05.2022
Как использовать монаду Supply для создания функции, генерирующей глобально уникальные имена?
Задний план:
Я делаю проект перевода кода, который требует от меня создания имен переменных. Ни одно из имен, которые я генерирую, не должно дублировать друг друга.
Я действительно расстроен, так как это было бы глупо просто и элегантно с...
579 просмотров
schedule
12.04.2023
Найдите слово в двумерном лабиринте, используя монаду State
Если у нас есть доска 4x4 с символами (которые могут повторяться) и какое-то случайное слово, нам нужно найти, можно ли найти это слово на доске. Теперь эту проблему довольно легко решить, не используя никаких причудливых вещей. Но с точки зрения...
111 просмотров
schedule
21.07.2022
Лучшая практика с Monad
Я хотел бы знать, что можно считать лучшей практикой в отношении монады State . Я также открыт для любых других предложений.
У меня есть бинарный файл для разбора. Он содержит разные заголовки, которые необходимо проанализировать, чтобы иметь...
258 просмотров
schedule
15.04.2023
Обобщенное получение Newtype
Haskell может получить экземпляр для MonadState s в T1 ниже, но не в T2 , который, тем не менее, является очень похожим типом. Каким образом мне следует изменить код для T2 , чтобы экземпляр для MonadState s мог быть получен автоматически?...
2935 просмотров
schedule
20.06.2022
Построение минимального примера Haskell для обработки ошибок в монаде State
Я скручиваю свой мозг в узлы, пытаясь понять, как соединить монаду State с Maybe .
Давайте начнем с конкретного (и намеренно тривиального/ненужного) примера, в котором мы используем монаду State для нахождения суммы списка чисел:
import...
207 просмотров
schedule
18.12.2023