gpt4 book ai didi

haskell -::运算符语法在有界类型类的上下文中如何工作?

转载 作者:行者123 更新时间:2023-12-01 16:03:31 25 4
gpt4 key购买 nike

我正在学习 Haskell,同时试图理解其语法设计背后的原因。大多数语法都很漂亮。

但由于 :: 通常就像一个类型注释,它是如何工作的:

Input: minBound::Int

Output: -2147483648

最佳答案

没有单独的运算符::: 是该示例中的类型注释。也许理解这一点的最好方法是考虑这段代码:

main = print (f minBound)

f :: Int -> Int
f = id

这也会打印 -2147483648minBound 的使用被推断为 Int,因为它是 f 的参数。一旦推断出类型,就知道该类型的值。

现在,回到:

main = print (minBound :: Int)

这以相同的方式工作,除了 minBound 被认为是一个 Int 因为类型注释,而不是一些更复杂的原因。 :: 不是一些二进制操作;它只是指示编译器表达式 minBound 的类型为 Int。同样,由于类型是已知的,因此可以从类型类中确定值。

关于haskell -::运算符语法在有界类型类的上下文中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58193911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com