scalaz相关内容

为什么验证会违反单一律?

onSO解释了为什么像scalaz、cat(Scala)或Arrow(Kotlin)这样的验证不能是Monad。 据我所知,这是因为他们根据应用函数器对Monad进行了建模,并且将验证的期望行为作为应用(集合所有无效)与将验证作为Monad的期望行为(序列验证和在第一个无效时快速失败)不同。因此,当您希望快速失败时,需要将验证转换为任一验证(这是一个单体)。 在https://groups ..
发布时间:2022-04-20 13:55:12 其他开发

如何更改尚未设置的 Scala 应用程序中的依赖项版本?

我正在尝试构建一个 Scala 播放应用程序,但由于 repo 不再启动,依赖项突然无法下载 下面的完整堆栈跟踪.我曾经获得 scalaz-stream v0.7a 依赖关系很好,但它似乎不再出现在网站上.有一个快照 0.7a 可供我使用.但是我只需要知道如何将版本切换到这个版本? 我不知道 scalaz 依赖项的来源或定义的位置.我自己没有设置它,如果我搜索目录中的所有文件,则没有提 ..
发布时间:2022-01-24 22:25:17 其他开发

如何在 Scala 中组合选项值?

我希望能够应用一个操作 f: (T,T) =>Scala 中的 T 到 Option[T] 值.如果两个值中的任何一个为 None,我希望结果为 None. 更具体地说,我想知道是否有更短的方法来执行以下操作: def opt_apply[T](f: (T,T) => T, x: Option[T], y: Option[T]): Option[T] = {(x,y) 匹配 {案例(一些( ..
发布时间:2022-01-13 08:10:52 其他开发

Clojure 在 Scala 中的“let"等价物

我经常面临以下情况:假设我有这三个功能 def firstFn: Int = ...def secondFn(b: Int): Long = ...def thirdFn(x: Int, y: Long, z: Long): Long = ... 而且我也有 calculate 功能.我的第一种方法可能如下所示: def calculate(a: Long) =thirdFn(firstFn ..
发布时间:2022-01-02 23:04:25 其他开发

在 Scala 中应用多个字符串转换

我想在 Scala 中以函数方式对字符串执行多个有序且连续的 replaceAll(...,...). 最优雅的解决方案是什么?欢迎斯卡拉兹!;) 解决方案 首先,让我们从 replaceAll 方法中取出一个函数: scala>val replace = (from: String, to: String) =>(_:String).replaceAll(from, to)替换: ..
发布时间:2022-01-02 13:49:45 其他开发

如何将 Seq[Either[A,B]] 减少为 [A,Seq[B]]?

给定一个 Seq[Either[String,A]] 的序列,其中 Left 是一条错误消息.我想获得一个 Either[String,Seq[A]],在那里我得到一个 Right(这将是一个 Seq[A]), 如果序列的所有元素都是 Right.如果至少有一个 Left(错误消息),我想获取第一条错误消息或所有错误消息的串联. 当然,您可以发布 cat 或 scalaz 代码,但我也对不使 ..
发布时间:2022-01-02 13:40:49 其他开发

转动 A =>M[B] 到 M[A =>乙]

对于一个monad M,是否可以将A =>M[B] 变成 M[A =>B]? 我试过遵循这些类型无济于事,这让我认为这是不可能的,但我想我还是会问.另外,在 Hoogle 中搜索 a ->m b ->m (a -> b) 没有返回任何东西,所以我运气不佳. 解决方案 实践中 不,它不能完成,至少不能以有意义的方式完成. 考虑这个 Haskell 代码 action :: ..
发布时间:2021-12-14 12:17:27 其他开发

如果 A 和 B 是单子,如何将 A[B[C]] 转换为 B[A[C]]?

我正在寻找一个更通用的解决方案,它利用 monads(可能还有 monoids)来实现与if( xs.contains(None) ) None else Some(xs.flatten) 为 Seq[Option[A]] 类型的 xs 做. 如何使用 Scalaz 做到这一点?我觉得我遗漏了一些明显的东西. 解决方案 有两个 monad 是不够的(对于 M)和已经足够了(对于 N) ..
发布时间:2021-12-07 13:05:25 其他开发

不同的 Scala Actor 实现概述

我正在尝试找到“正确"的演员实现.我意识到有很多它们,选择一个有点令人困惑.就我个人而言,我对远程演员特别感兴趣,但我想完整的概述会对许多其他人有所帮助.这是一个非常普遍的问题,所以请随意回答您所了解的实现. 我了解以下 Scala Actor 实现 (SAI).请补充缺少的. Scala 2.7(不同于) Scala 2.8 阿卡 (http://www.akkasource.o ..
发布时间:2021-11-26 22:39:26 其他开发

什么是 DList?

我尝试使用谷歌搜索,但我得到的只是关于小名人的故事.鉴于缺乏文档,什么是 DList? 解决方案 这是一个差异列表,遵循 "差异列表作为函数" scala>val (l1, l2, l3) = (List(1, 2, 3), List(4, 5, 6), List(7, 8, 9))l1: List[Int] = List(1, 2, 3)l2: List[Int] = List(4, ..
发布时间:2021-11-16 19:21:01 其他开发

更新 Scala 案例类

可能的重复: 更新 Scala 案例类的操作 这个问题是今晚我想到的. 我有两个相同类型的实例化案例类. case class Foo(a : Option[String], b : Option[String], c : Option[String]) 让我们调用实例化的类 A 和 B. val a = Foo(a=Some("foo"), b=Some("bar"), c= ..
发布时间:2021-07-16 18:36:37 其他开发

scalaz, Disjunction.sequence 返回左列表

在 scalaz 7.2.6 中,我想在 Disjunction 上实现 sequence,这样如果有一个或多个左边,它返回一个列表,而不是只取第一个(如 Disjunction.sequenceU): import scalaz._, Scalaz._列表(1.right, 2.right, 3.right).sequenceres1: \/-(List(1, 2, 3))List(1.rig ..
发布时间:2021-07-16 18:36:32 其他开发