在编译时间(Scala)中使用varargs时,是否可以控制函数中的参数数?
让我们假设,我们必须创建仅包含奇数元素的奇数列表[+t] 。 可以按照下面的方式进行这样的操作, OddList(1,2) //Works fine OddList(1,2,3) //Compil…
自动从丰富的案例类推导变压器到一个简单的案例类?
我有一个代表宠物的简单案例类: case class Pet(name: String, age: Int) 现在说我有一个案例类,其中有1:1映射到 PET ,但是所有属性都被包裹在某…
Scalaz iteratee,为 BufferedReader 创建枚举器
如何为 BufferedReader 创建枚举器? 我发现相当旧的文章: http ://apocalisp.wordpress.com/2010/10/17/scalaz-tutorial-enumeration-based-io-with…
在更复杂的计算中使用 scalaz 状态
我试图了解如何使用 scalaz State 来执行复杂的状态计算。问题是这样的: 给定一个潜在除数的 List[Int] 和一个数字 List[Int],找到一个 List[(Int, …
Scalaz 验证:聚合错误或返回任何成功
如何使用 scalaz 实现这种行为: "Fail1".failNel[Int] and "Fail2".failNel[Int] to Failure("Fail1", "Fail2") "Fail1".failNel[Int] and 100.succe…
组合 2 个列表的元素
假设我们有两个列表: val l1=List("a","b","c") val l2 = List("1","2","3") 我想要的是: List("a1", "b2", "c3") 也就是说,将 l1 的第 n 个元素与…
akka-camel 与 scalaz-camel
有人对 akka-camel 与 scalaz-camel-akka 进行过评估吗?我喜欢 scalaz 带来的函数式方法,并且使用过一点 scalaz-camel-akka,但还没有真正使用过 ak…
Scalaz Validation,验证内在价值
我有一个 Validation 对象, val v = Validation[String, Option[Int]] 我需要进行第二次验证,例如检查实际 Integer 值是否等于 100。如果我这样做,…
使用 scalaz 函数编译 Foldleft 时,Scala 编译器会奇怪地抱怨
我最近碰巧使用 scalaz >>=。我将所有应该与 >>= 绑定的方法放入列表和 foldleft 中,如下所示, val dataMap:Map[K,V] def call[F](funcList:List[fu…
Scala PartialFunction 可以是 Monoid 吗?
我认为 PartialFunction 可以是 Monoid。我的思维过程正确吗? 例如, import scalaz._ import scala.{PartialFunction => -->} implicit def partial…
在scala中将两个元组组合成一个新的更大元组的干净方法?
假设我有以下元组: scala> val t1 = Tuple2("abcd", "efg") t1: (java.lang.String, java.lang.String) = (abcd,efg) scala> val t2 = Tuple2(1234, …
有没有更惯用的方法从 Option[IO[Option[A]] 获取 IO[Option[A]] 然后使用序列和映射连接?
我遇到了很多地方,我有类似的东西, def f(s: String): Option[Long] = ... def g(l: Long): IO[Option[Wibble]] = ... val a: IO[Option[Wibble]] =…
使用scalaz的promise时调用函数
作为scala和scalaz的新手,在使用promise时遇到了问题。我的代码是这样的。 import scalaz._ import Scalaz._ object Main2 extends Application { de…
映射 Map 的单个条目
我想实现如下所示的效果: (_ : Map[K,Int]).mapKey(k, _ + 1) mapKey 函数仅将其第二个参数 (Int => Int) 应用于存储在 k 下的值代码>.标准库里面有…
尝试理解 scalaz 状态 monad
我正在尝试在我的电梯项目中开始使用 scalaz。为此,我重写了一些代码以满足这种风格。考虑一个用于登录用户的代码: def login: CssSel = { var pass…