Описание тега scalaz-zio
ZIO - это библиотека Scala с нулевой зависимостью для асинхронного и параллельного программирования с функциями, подобными Cats IO или Monix.
1
ответ
Валидация и фиксация ошибок с использованием алгебры
Я наткнулся на эту статью в среде: https://medium.com/@odomontois/tagless-unions-in-scala-2-12-55ab0100c2ff. Есть фрагмент кода, который мне трудно понять. Полный исходный код статьи можно найти здесь: https://github.com/Odomontois/zio-tagless-err. …
21 май '19 в 18:57
1
ответ
Как правильно отправить ответ JSON в http4s?
Не так давно я перешел с akka-http на http4s. Одна из основных вещей, которую я хотел сделать правильно - обработка JSON, в частности отправка ответа JSON. Я решил использовать http4s с ZIO вместо кошек, поэтому вот как выглядит http-маршрут: import…
23 май '19 в 10:22
1
ответ
Разница между IO и UIO в скаляр ZIO
В чем разница между IO и UIO в новой версии от ZIO например UIO[Long] а также IO[Nothing, Long]?
12 мар '19 в 08:16
2
ответа
Как элегантно объединить несколько задач, содержащих параметры в ZIO
Я ищу самую элегантную реализацию import scalaz.zio.Task def combineTasks[A, B, C, D](task1: Task[Option[A]], task2: Task[Option[B]], task3: Task[Option[C]]) (f: (A, B, C) => D) : Task[Option[D]] с помощью никаких дополнительных зависимостей scal…
16 мар '19 в 08:14
1
ответ
Zio run блокирует обратно совместимый код
(Надеюсь) простой вопрос о Скалазе Зио. У меня есть какой-то старый код, который я переделал в Zio. Я хочу, чтобы один путь этого кода продолжал вести себя точно так же, как это было: синхронный блокирование в текущем потоке (это жесткое требование)…
27 мар '19 в 15:24
1
ответ
Понимание библиотек Scala FP
Просто для наглядности для того, кто хочет начать работать с библиотекой Scala FP, чтобы стать лучше в чистой FP. Кто-нибудь прояснит разницу / отношение между Cats и Cats-Effect, Cats-Effects IO? Кроме того, где Zio и Monix стоят по отношению к это…
03 июл '19 в 13:57
0
ответов
Как получить доступ к локальным данным волокна из побочного кода в ZIO
Я знаю это FiberRef это волокно сознавая эквивалент Javas ThreadLocal, Тем не менее, как я могу хранить информацию о волокне для побочного кода? По сути, я ищу что-то похожее на https://monix.io/api/3.0/monix/execution/misc/Local.html, чтобы сделать…
28 июл '19 в 10:29
2
ответа
Обработка ошибок в scala ZIO
Я хотел обработать некоторые исключения в ZIO, используя catchAll или catchSome, как показано ниже: object Test extends App { def run(args: List[String]) = myApp.fold(_ => 1, _ => 0) val myApp = for { _ <- putStrLn(unsafeRun(toINT("3")).toS…
04 июл '19 в 13:23
0
ответов
Автоматический выключатель Monix с Http-запросом
Я изо всех сил пытаюсь заставить автоматический выключатель Monix работать асинхронно с некоторым запросом, который я получаю в своем сервисе, и который не выполняется, поэтому он должен активировать автоматический выключатель, и даже когда он разом…
05 июл '19 в 00:15
0
ответов
Как получить идентификатор текущего выполняющегося волокна ZIO из кода побочных эффектов
Я знаю, что могу узнать идентификатор текущего выполняющегося волокна, позвонив ZIO.descriptor.map(_.id) Однако то, что я хочу, - это нечистая функция, которую я могу вызвать из кода с побочными эффектами, давайте определим ее как def getCurrentFibe…
28 июл '19 в 16:37
2
ответа
ЗИО: Как рассчитать только один раз?
Я использую ZIO: https://github.com/zio/zio в моем build.sbt: "dev.zio" %% "zio" % "1.0.0-RC9" Независимо от того, что я пробовал, мои результаты всегда вычисляются каждый раз, когда они мне нужны: val t = Task { println(s"Compute") 12 } val r = uns…
09 июл '19 в 03:49
4
ответа
Как элегантно выполнять несколько эффектов параллельно с ZIO
Я знаю, что я могу использовать import zio.Task def zip3Par[A, B, C](a: Task[A], b: Task[B], c: Task[C]): Task[(A, B, C)] = a.zipPar(b).zipWithPar(c) { case ((a, b), c) => (a, b, c) } def zip4Par[A, B, C, D](a: Task[A], b: Task[B], c: Task[C], d:…
13 июл '19 в 10:38
0
ответов
ZIO взаимодействует с Cats при параллельных операциях
ZIO не зависит от Catsпоэтому он имеет свои собственные методы для выполнения sequence операции: ZIO.sequencePar а также ZIO.sequence, Я пытался использовать sequence обеспечено взаимодействие с Cats и это работает так же, как ZIO.sequence: import z…
23 июл '19 в 11:53
1
ответ
Scala ZIO Ref тип данных
У меня есть один класс в Scala с четырьмя параметрами, 2 из которых являются переменными, и я хотел использовать тип данных Ref в Zio для управления доступом к этим переменным, вот мой код: import zio._ class Rectangle(val width: Int,val height: Int…
29 июл '19 в 14:29
1
ответ
Scala ZIO.bracket: обработка ошибок при освобождении ресурса
Я хочу создать каталог, затем сделать что-то с каталогом и, наконец, удалить его. Я использую для этого скобку. val fs: FileSystem = ??? val path = ??? ZIO.bracket[Any, Throwable, Path, Unit]( acquire = ZIO{fs.mkdirs(path); path}, release = p => …
02 авг '19 в 18:20
1
ответ
Почему не работает приложение ZIO с мельницей?
Я установил простое приложение ZIO от zio.dev. val myAppLogic = for { _ <- putStrLn("Hello! What is your name?") name <- getStrLn _ <- putStrLn(s"Hello, ${name}, welcome to ZIO!") } yield () При работе в / с Intellij он работает как положен…
17 июл '19 в 21:42
1
ответ
IO Monad vs Reader Monad
Интересно, есть ли связь между IO Monad и Read Monad? Может ли окружение в монаде Reader быть эффектом? Если да, то как ZIO или Cats IO, скалярные эффекты работают с принципами Reader Monad?
03 июл '19 в 23:49
0
ответов
Как я могу получить идентификатор родителя текущего волокна ZIO?
Я знаю, что могу получить дескриптор для текущего выполняющегося волокна, вызвав ZIO.descriptor, Однако как я могу получить некоторую информацию о родительском волокне, например, его идентификатор, не сохраняя его вручную?
02 авг '19 в 08:38