scala中的专业化和更高类型的问题

时间:2017-07-04 19:42:23

标签: scala typeclass implicit higher-kinded-types

我有这些行(scala 2.11.11):

trait TypeClass[T]
class DoubleIsTypeClass extends TypeClass[Double]
implicit val forDouble = new DoubleIsTypeClass

知道让我们添加以下行:

case class User[V[_], @specialized T : TypeClass](a: V[T])

现在它没有编译。 正在删除@specialized修复它。 这是一个错误吗? 除了他们对类型推断的帮助之外,我真的不需要更高的种类,但这是一个大问题。

修改 只为那些可能偶然发现类似问题的人

Typeclasses不是问题,案例类是:

case class User[V[_], @specialized T](a: V[T])

上面的行不能单独编译。

1 个答案:

答案 0 :(得分:1)

这看起来像SI-9227。这似乎是一个错误。

一般来说,这些都是some quirks around specialization,值得一读。