For (a cut-down) example,
class SemigroupOps[F] (val self: F)(val F: Semigroup[F]) extends Ops[F] {
def |+|(other: => F): F = F.append(self, other)
}
F
in this case is a variable so I'd expect to see it as f
in Java-like libraries.
Why does Scalaz use the upper-case convention? Is it a haskell convention?
Why?
For extra merit, what's the motivation behind it? So far, it's more confusing than helpful but I'm aware I'm missing the reason behind the convention.