Вопросы по теме 'monoids'
Стрелка для добавления одного элемента за раз
Этот вопрос касается HXT, но я думаю, что он применим к концепции ArrowPlus в целом. Рассмотрим следующую программу:
module Main (main) where
import Text.XML.HXT.Core
import Control.Monad (void)
main :: IO ()
main = void $ runX $ root []...
173 просмотров
schedule
01.06.2024
Получение или реализация String.Zero и bool.Zero в общем случае для использования с моноидами
Я пытаюсь преобразовать некоторый существующий код в более монодический подход . Существующий код содержит интерфейсы IXInterface и числовые значения, такие как int и bool . Числа уже имеют Zero по умолчанию, интерфейсы имеют его в качестве...
78 просмотров
schedule
25.01.2024
Монада: Какое значение имеет Идентичность, что произойдет, если в наборе не будет такого специального члена?
Я пытаюсь понять концепцию monad , смотрю это отличное видео , Брайан Бекенд пытается объяснить, что такое монада.
Когда он говорит о monoid , это набор типов, у него есть правило композиции, и эта композиция должна подчиняться 2 правилам:...
125 просмотров
schedule
10.11.2022
Доступ к члену экземпляра класса из-за пределов его определения
У меня есть этот тип:
newtype Mem s a = Mem { runMem :: s -> (a,s) }
и я должен создать экземпляр моноида для этого типа, но для этого я должен использовать mempty и mappend моноида a, независимо от того, что это может быть. Как бы это...
74 просмотров
schedule
14.04.2024
Экземпляр моноида для A => A в Cats
Функции A => A являются моноидами с identity как empty и композицией как combine . К сожалению, я не нашел его в cats библиотеке. Предоставляет ли библиотека экземпляр моноида для этих функций?
Как насчет A => M[A] , где M...
212 просмотров
schedule
17.09.2022
haskell, ассоциативность моноидов IO нарушена?
В типе haskell IO есть экземпляр Monoid:
instance Monoid a => Monoid (IO a) where
mempty = pure empty
если у меня есть три действия, которые разделяют какое-то состояние и меняют поведение друг друга с помощью побочного эффекта, это...
155 просмотров
schedule
19.01.2024