Вопросы по теме 'scalaz'
Как работать с монадой Reader и Try?
Я читаю эту замечательную статью о инъекции зависимостей в scala с помощью монады Reader .
Исходный пример работает хорошо, но я немного изменил возвращаемые типы UserRepository.get/find . Было User , но я изменил его на Try[User] .
Тогда...
1125 просмотров
schedule
29.10.2021
Как составить функции, возвращающие Writer [List [Int], Int]?
Предположим, у меня есть несколько функций Int => Int , составленных из andThen :
val f1: Int => Int = _ + 1
val f2: Int => Int = _ + 2
val f3: Int => Int = _ + 3
val f = f1 andThen f2 andThen f3
Теперь мне нужно вернуть и...
77 просмотров
schedule
15.09.2021
Как преобразовать список [ValidationNel [A, Option [B]]]
Мне нужен комбинатор, чтобы преобразовать List[ValidationNel[A, Option[B]]] в ValidationNel[A, List[B]] , чтобы упорядочить проверку и, в случае успеха, сгладить это дерьмо.
Вот код:
def sequenceAndFlatten[A,B](valid: List[ValidationNel[A,...
126 просмотров
schedule
04.10.2021
Как создать дизъюнкцию ScalaZ из Java?
Почему? Я пишу тесты для класса адаптера Java-Scala.
Как создать левую и правую дизъюнкцию для \/[String, Int] в Java?
207 просмотров
schedule
20.11.2021
Как элегантно объединить несколько задач, содержащих параметры в ZIO
Я ищу наиболее элегантную реализацию
import scalaz.zio.Task
def combineTasks[A, B, C, D](task1: Task[Option[A]],
task2: Task[Option[B]],
task3: Task[Option[C]])...
780 просмотров
schedule
08.09.2021
создание и использование автономной банки scalaz без sbt
Я скачал снапшот scalaz из репозитория (версия 6.0.4). Я хочу создать отдельный файл jar и поместить его в каталог scala lib, чтобы использовать scalaz без sbt.
У меня есть пакет scala с scala-lang.org, и он хранится в /opt/scala Насколько я...
923 просмотров
schedule
07.03.2022
Что такое монада-преобразователь в отличие от монады?
Вопрос говорит сам за себя. Я знаю, что (Scala) монада выглядит так:
trait Monad[M[_]] {
def pure[A](a : A) : M[A]
def bind[A, B](ma : M[A], f : A => M[B]) : M[B]
}
Как выглядит Монада Трансформатор ? А для чего они нужны?...
2018 просмотров
schedule
19.03.2022
Scalaz итерация, создайте Enumerator для BufferedReader
Как можно создать перечислитель для BufferedReader?
Я нашел довольно старую статью: http://apocalisp.wordpress.com/2010/10/17/scalaz-tutorial-enumeration-based-io-with-iteratees/ и похоже, что он не работает со Scalaz 6.0.4
Я пытаюсь создать...
480 просмотров
schedule
29.03.2022
как перевести Haskell в Scalaz?
Мы с одним из моих старшеклассников собираемся портировать библиотеку комбинаторов синтаксических анализаторов Parsec для Haskell на Scala. (Его преимущество перед встроенной библиотекой синтаксического анализа Scala заключается в том, что вы можете...
1315 просмотров
schedule
29.03.2022
scalaz Складная композиция
у меня есть следующий код
val listOption: List[Option[Int]] = List(1.some, none, 2.some)
я хочу сложить элементы, я пишу следующий код
val result = listx.fold(0.some)((acc, el) => {
(acc, el) match {
case (Some(a), Some(b)) =>...
157 просмотров
schedule
30.03.2022
Использование scalaz kleisli без явного переноса функции перед
Допустим, у меня есть две функции val f: A => M[B] и val g: B => M[C] , где M — монадический. Таким образом, я хочу объединить их, используя kleisli. В настоящее время я делаю следующее: kleisliU(f) andThenK g Но я не нашел способа...
73 просмотров
schedule
25.03.2022
Карта сбоя проверки Scalaz
import scalaz._
import Scalaz._
"abc".parseInt
Это вернет Validation[NumberFormatException, Int] . Есть ли способ применить функцию на стороне сбоя (например, toString ), чтобы получить Validation[String, Int] ?
1591 просмотров
schedule
01.04.2022
Преобразовать scala 2.10 future в scalaz.concurrent.Future // Задача
Кто-нибудь пришел к фрагменту кода, как правильно преобразовать будущее scala (2.10) в новое будущее scalaz7? Я знаю, как преобразовать scalaz future через scala Promise в scala Future, но не знаю, как это сделать правильно.
Например
import...
2878 просмотров
schedule
03.04.2022
Scalaz: объединить Writer и State (и/или Lens)
Я пытаюсь объединить Writer и State (через Lens). Я почти уверен, что мне нужны преобразователи монад, но мне трудно понять, как использовать версии T и как правильно это построить.
Сейчас у меня есть несколько моделей (упрощенно):
case class...
181 просмотров
schedule
01.04.2022
Scalaz: преобразование State of Option в Option of State
Пытаюсь осмыслить монаду Scalaz State и преобразователи монад.
Что я хочу сделать, так это реализовать что-то вроде:
def transform[S,A](o: State[Option[S], A]) :Option[State[S,A]]
Это вообще возможно? Как бы я это сделал?
148 просмотров
schedule
14.04.2022
Scala map2 над кортежем с внутренним моноидом (или как сделать это просто, но лучше?)
Ситуация:
Поток (RxScala) событий, которые мы группируем с помощью tumblingBuffer(), а затем строим полную историю для отладки. В конечном итоге я хочу, чтобы они были в (Seq[T], Seq[T]) всех значений, поэтому я создал следующую функцию в качестве...
466 просмотров
schedule
10.04.2022
Использование границ представления с помощью scalaz
Я делаю свой первый набег на scalaz, преобразуя существующий класс для использования трейта Monoid . Чего я пытаюсь добиться, так это установить представление, привязанное к параметру типа моего класса, чтобы гарантировать, что его можно...
208 просмотров
schedule
22.04.2022
Scalaz Validation: агрегировать ошибки или возвращать любой успех
Как можно реализовать с помощью scalaz такое поведение:
"Fail1".failNel[Int] and "Fail2".failNel[Int] to Failure("Fail1", "Fail2")
"Fail1".failNel[Int] and 100.successNel[String] to Success(100)
Мое решение выглядит сложным, и я думаю, что...
674 просмотров
schedule
23.04.2022
Почему fmap должен отображать каждый элемент списка?
Прочитав книгу Изучай Haskell во благо и очень полезную статью в вики-книге Теория категорий Haskell , которая помогла мне преодолеть распространенную ошибку категории о путанице объектов категории с объектами программирования , у меня все еще...
5878 просмотров
schedule
22.04.2022
Scalaz 7 как использовать Functor с Function1
Привет, я начинаю изучать Scalaz.
Я хочу получить функцию и сопоставить ее с другой функцией.
хотя я могу написать это:
import scalaz._, Scalaz._
import std.function._
import syntax.monad._
((x: Int) => x + 1) map {_ * 7}
и это...
210 просмотров
schedule
29.04.2022