haskell - 种类有什么用吗?

标签 haskell types functional-programming

在 Haskell 中,种类(类型的类型)允许一些有用的东西,例如类型构造函数。我的问题是,同时拥有各种种类(类型的类型的类型)是否有任何好处,或者他们能做的事情是否只有种类和类型才能轻松完成?

最佳答案

Ωmega一路向上。基本上就是claimed无限类型层次结构与适当的 GADT 一起与依赖类型一样强大。

此外,当尝试使用 DataKinds、PolyKinds 等内容时,我有时会因为类型构造函数未提升为类型构造函数或提升为类型构造函数而受到某种限制。种类不能受到限制(即没有种类类)。 Ωmega 似乎解决了很多这些限制——不幸的是,正如通常的情况一样,代价是成为一种更加学术的语言。但我仍然发现它比“真正的”依赖类型语言(如 Agda 和 Coq)更容易阅读(尽管至少 Agda does have 也是一种无限的层次结构)。也许这是因为 Ωmega 更适合 Haskell 思维方式。

关于haskell - 种类有什么用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22269511/

相关文章:

haskell - 编译器如何确定仿函数的固定点以及 cata 如何在叶级工作?

Haskell 不在范围内 : Type constructor or class `PushInt'

c++ - 如何使用 std::max 或 std::min 作为函数参数

scala - 压缩两个数组,总是第一个数组的 3 个元素然后是第二个数组的 2 个元素

haskell - Haskell 中的 Guard、if-then-else 与 case

list - 如何使用 bind (>>=) 实现一个函数

haskell - 使函数成为向量类型类的实例

scala - 无需指定输入类型即可定义高阶函数的巧妙方法

parsing - 使用 Haskell 的 Parsec 进行编程语言转换器

c++ - 从 Type* 转换为 Type,反之亦然