【发布时间】:2011-10-26 16:14:12
【问题描述】:
Haskell 中的类型推断有一点学习曲线(至少可以这么说!)。开始学习它的一个好方法是使用简单的示例。所以,下面是一个类型推断的“hello world”。
考虑以下示例:
Prelude> :t 3
3 :: (Num t) => t
Prelude> let x = 3
Prelude> :t x
x :: Integer
因此问题是:为什么 3 和 x 有不同的类型?
链接摘要:
阅读下面的答案以获得完整的故事;这里只是一个链接摘要:
- GHC 类型默认:Haskell Report section 4.3.4
- GHCi 的扩展类型默认:Using GHCi section 2.4.5
- 单态限制:Haskell wiki
【问题讨论】:
-
是的,新标题比旧标题更具体/更清晰!
-
我删除了原始问题的底部;没有增加足够的价值来保证被纳入。
标签: haskell type-inference monomorphism-restriction