Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 为什么是“a”;“类型类”;称为;类型“类”;?_Scala_Haskell_Typeclass - Fatal编程技术网

Scala 为什么是“a”;“类型类”;称为;类型“类”;?

Scala 为什么是“a”;“类型类”;称为;类型“类”;?,scala,haskell,typeclass,Scala,Haskell,Typeclass,当深入Scala时,我遇到了术语type class。 因为类是一种类型,而类型可以 在Scala中是一个类,“类型”和“类”本身就是抽象术语 在阅读了一些例子之后,我感觉到一个类型类可以做什么 是的,但也许有一个更容易的方法来获得精神挂钩 (图片,概念)通过解释类型类为何具有 之所以这样命名。是因为它(一起)将类型“具有”由类型类定义的公共集操作 我觉得这很自然。在Haskell中没有Java/Scala意义上的类,所以这个术语可以自由使用(正如Johannes Weiß所说的“类型类”) 它

当深入Scala时,我遇到了术语type class。 因为类是一种类型,而类型可以 在Scala中是一个类,“类型”和“类”本身就是抽象术语

在阅读了一些例子之后,我感觉到一个类型类可以做什么 是的,但也许有一个更容易的方法来获得精神挂钩 (图片,概念)通过解释类型类为何具有 之所以这样命名。

是因为它(一起)将类型“具有”由类型类定义的公共集操作


我觉得这很自然。

在Haskell中没有Java/Scala意义上的类,所以这个术语可以自由使用(正如Johannes Weiß所说的“类型类”)


它没有在官方的Scala文档中使用,但是来自Haskell的人发现他们可以在Scala中模仿Haskell类型类并重用它的名称。

谢谢,现在这更有意义了:-)此外,“类型类”使用的术语大致上是[从这个意义上说](.事实上,GHC的
不可判定实例
扩展非常有可能对适当的类进行编码,然后继续,呃,将它们视为集合。我希望我在第一次遇到它们时也问过同样的问题。下面两个答案都会让我的生活更轻松。)