Вопросы по теме 'kleisli'

Могу ли я использовать преобразователи монад, чтобы упростить эту композицию?
предположим, у меня есть type VS[A] = Validation[String, A] val v: VS[Option[A]] val f: A => VS[B] Я хочу получить результат типа VS[Option[B]] , но если v является Success(None) , результат также должен быть Success(None) . Вот...
1168 просмотров

Как комбинировать option с Клейсли
Учитывая метод def f[A, B, C](a: A) : Kleisli[Future, B, C] = ??? Мне нужен комбинатор, работающий с Option[A] Моя первая попытка была: def g[A, B, C](a: Option[A], default: => C) = a match { case Some(a) => save(a) case...
139 просмотров
schedule 02.03.2024

Понимание композиции монадических функций
Я узнаю о монадах из книги «Изучите Haskell во благо!» Миран Липовача. Я пытаюсь понять закон ассоциативности для монад. По сути, закон гласит, что когда у вас есть цепочка приложений монадических функций с >>= , не должно иметь значения,...
506 просмотров

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