Вопросы по теме 'monoids'
Категориально двойственны ли монады Writer m и Либо e?
Я заметил, что существует двойственное отношение между монадами Writer m и Either e . Если m — моноид, то
unit :: () -> m
join :: (m,m) -> m
может использоваться для формирования монады:
return is composition: a -> ((),a)...
673 просмотров
schedule
18.03.2023
Напишите максимальный моноид с помощью Maybe в Haskell
Я изучал моноиды Haskell и их использование , что дало мне довольно хорошее понимание основ моноидов. Одна из вещей, представленных в сообщении блога, - это моноид Any, и его использование выглядит следующим образом:
foldMap (Any . (== 1)) tree...
1511 просмотров
schedule
08.08.2023
Как реализовать моноидный интерфейс для этого дерева в haskell?
Прошу прощения за терминологию, у меня все еще не получается.
Дерево:
data Ftree a = Empty | Leaf a | Branch ( Ftree a ) ( Ftree a )
deriving ( Show )
У меня есть несколько вопросов:
Если Ftree не может быть Empty , он больше...
1738 просмотров
schedule
17.04.2022
Как суммировать поток моноидных значений в Scala?
Предположим, я использую библиотеку Rng для простого моделирования методом Монте-Карло (как в этом post ).
val d : Rng[Double] = double
val point : Rng[(Double, Double)] = pair(d, d)
val points = point.stream(1000)
val tests =...
349 просмотров
schedule
14.08.2022
Складки над функциями - моноиды
Почему сгиб над длиной списка не является моноидом?
length = foldr (\_ n -> 1+n) 0
Разве он не ассоциативен и имеет нейтральный элемент 0 , так что он должен быть моноидом?
100 просмотров
schedule
05.09.2022
Аппликативная реализация Const Monoid
instance Monoid m => Applicative (Const m) where
pure _ = Const mempty
Const f <*> Const v = Const (f `mappend` v)
Я не понимаю, как определение типа <*> может проверять тип.
С левой стороны f ограничивается...
208 просмотров
schedule
25.02.2023
Накопление ошибок с помощью Monoid
Предположим, у меня есть список функций E => Either[Exception, Unit] , которые нужно вызывать при событии E и накапливать ошибки для возврата Either[List[Exception], Unit] .
type EventHandler = E => Either[Exception, Unit]
import...
291 просмотров
schedule
26.06.2022
Отложенный ввод-вывод при добавлении
Возможно, у меня сложилось ложное впечатление, что Haskell ленивее, чем он есть на самом деле, но мне интересно, есть ли способ получить лучшее из обоих миров...
Data.Monoid и Data.Semigroup определяют два варианта First . Моноидальная версия...
250 просмотров
schedule
30.11.2022
Простая композиция имплицитов с моноидами в Scala
У меня есть следующая черта:
import scalaz.Monoid
trait Mapper[M, R] {
def map(m: M): R
}
object Mapper {
@inline implicit def listMapper[M, R]
(implicit mapper: Mapper[M, R], s: Monoid[R]): Mapper[List[M], R] =
(xs: List[M])...
46 просмотров
schedule
11.06.2022
Моноиды и Num в Haskell
Я изучал Haskell в течение последних нескольких месяцев и наткнулся на пример моноидов, который меня озадачил.
Учитывая эти определения:
data Tree a = Empty | Node a (Tree a) (Tree a) deriving (Show, Read, Eq)
instance F.Foldable Tree where...
1247 просмотров
schedule
27.07.2022
Чем моноид на аппликативных функторах отличается от моноида в категории эндофункторов?
Возможно, ни одно из этих утверждений не является категорично точным, но монаду часто определяют как «моноид в категории эндофункторов»; определен Alternative Haskell как «моноид на аппликативных функторах», где аппликативный функтор - это...
1606 просмотров
schedule
14.01.2023
Если структура данных складная, является ли она моноидом?
Очевидно, что если структура данных является моноидом, то она сворачиваема, но можно ли с уверенностью сказать, что если структура данных сворачиваема, то это моноид?
https://en.wikibooks.org/wiki/Haskell/Foldable
Если структура данных...
472 просмотров
schedule
22.06.2022
Как соотносятся между собой операторная ассоциативность, ассоциативный закон и зависимость значений монад?
С одной стороны, монадический оператор привязки >>= является левоассоциативным (AFAIK). С другой стороны, закон монад требует ассоциативности, т.е. порядок вычислений не имеет значения (как в случае с моноидами). Кроме того, монады кодируют...
165 просмотров
schedule
29.12.2022