Haskell 高秩类型的GHC类型推断-分配给单类型
我以前问过这个问题,经过大量调查,我得出结论,GHC有一些特殊规则只适用于中缀Haskell 高秩类型的GHC类型推断-分配给单类型,haskell,types,polymorphism,Haskell,Types,Polymorphism,我以前问过这个问题,经过大量调查,我得出结论,GHC有一些特殊规则只适用于中缀$和 对于这个问题,我假设GHC遵循页面上提到的系统,并在中进一步阐述 第页声明如下: 未指定显式签名的参数变量 向上推理中的单类型,但可以继承任意秩类型 在向下检查中 我假设“指定的单类型”意味着秩-N类型通过将其所有限定符移动到最外层而转换为秩-1类型 我也相信这就是导致我问上一个问题的不寻常类型错误的原因 所以我有几个问题: 1) 有没有办法让GHC在隐式转换为单类型时发出警告(或错误)?我上一篇文章中的类型错误
$
和
对于这个问题,我假设GHC遵循页面上提到的系统,并在中进一步阐述
第页声明如下:
未指定显式签名的参数变量
向上推理中的单类型,但可以继承任意秩类型
在向下检查中
我假设“指定的单类型”意味着秩-N类型通过将其所有限定符移动到最外层而转换为秩-1类型
我也相信这就是导致我问上一个问题的不寻常类型错误的原因
所以我有几个问题:
1) 有没有办法让GHC在隐式转换为单类型时发出警告(或错误)?我上一篇文章中的类型错误需要一段时间才能解决,向monotype转换的警告比类型错误更有帮助。2) 是否存在隐式“指定给单类型”是明智行为的情况,如果是,您能举个例子吗?
3) 关于中缀
$
和
,这些在GHC中似乎有特殊的规则。这在哪里有记录?GHC还有其他特殊规定吗?记录在哪里?与此相关-我认为没有任何官方文件。可能会引起兴趣。至于第3点,我怀疑它们只记录在GHC来源中。我无论如何都不知道有任何文件。您可以尝试在ghc用户列表中询问权威答案。