Вопросы с тегом «comonad»

112
Понимание, почему Zipper - это Comonad

Это продолжение ответа на мой предыдущий вопрос. Предположим , что мне нужно отобразить каждый элемент a:Aиз List[A]к b:Bс функцией def f(a:A, leftNeighbors:List[A]): Bи генерировать List[B]. Очевидно, я не могу просто вызвать mapсписок, но могу использовать застежку-молнию . Застежка-молния - это...

105
Что такое класс типов Comonad в Haskell?

Что такое класс типов Comonad в Haskell? Как и в Comonad от Control.Comonad в пакете comonad (также приветствуются объяснения любых других пакетов, которые предоставляют класс типов Comonad). Я смутно слышал о Comonad, но все, что я действительно знаю о нем, - это то, что это обеспечивает extract...

11
Как разложить монаду продолжения в левую и правую примыкания?

Как монаду состояния можно разложить на Product (слева - функтор) и Reader (справа - представимый). Есть ли способ разложить монаду продолжения? Ниже код моя попытка, которая не проверяет тип -- To form a -> (a -> k) -> k {-# LANGUAGE MultiParamTypeClasses, TypeOperators, InstanceSigs,...