在this paper中,他们举了一个Scala类的例子:
class S[A](l : String, formatD: Format[A]) extends Format[A] {
def format(s : String) = formatD.format(s+l)
}
并说:
一个重要的区别是, 使用类型类,我们无法实现相应的
S[A]
模型的实例。 问题是,要定义S
,需要String
参数,但是 类类实例只能在类中使用类型类字典 实例约束。 因此,不允许以下内容:instance (String, Format a) ⇒ Format a where ...
当他们说"键入班级词典"?
时,他们指的是什么?