对于(缩减)示例,
class SemigroupOps[F] (val self: F)(val F: Semigroup[F]) extends Ops[F] {
def |+|(other: => F): F = F.append(self, other)
}
F
在这种情况下是一个变量,所以我希望f
在类似 Java 的库中看到它。
为什么 Scalaz 使用大写约定?这是一个haskell约定吗?
为什么?
额外的功绩,背后的动机是什么?到目前为止,它比有用更令人困惑,但我知道我错过了公约背后的原因。