Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.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
Haskell 哈斯克尔。为什么:info(:)会返回两次定义?_Haskell_Types_Infix Notation - Fatal编程技术网

Haskell 哈斯克尔。为什么:info(:)会返回两次定义?

Haskell 哈斯克尔。为什么:info(:)会返回两次定义?,haskell,types,infix-notation,Haskell,Types,Infix Notation,我是哈斯克尔的新手 如果我输入GHCi(7.10.3): 我得到的结果是: *** Parser: data [] a = ... | a : [a] -- Defined in ‘GHC.Types’ infixr 5 : data [] a = ... | a : [a] -- Defined in ‘GHC.Types’ infixr 5 : 这是否意味着运算符定义了两次? 我在源代码中没有发现任何可疑的东西=/请不要注意,这肯定是一个bug。我可以在GHC 7.10.3上重现

我是哈斯克尔的新手

如果我输入GHCi(7.10.3):

我得到的结果是:

*** Parser:
data [] a = ... | a : [a]   -- Defined in ‘GHC.Types’
infixr 5 :

data [] a = ... | a : [a]   -- Defined in ‘GHC.Types’
infixr 5 :
这是否意味着运算符定义了两次?
我在源代码中没有发现任何可疑的东西=/

请不要注意,这肯定是一个bug。我可以在GHC 7.10.3上重现这种行为,但当前的GHC 8.0开发快照没有出现这种问题:

GHCi, version 8.0.0.20160316: http://www.haskell.org/ghc/  :? for help
Prelude> :info (:)
data [] a = ... | a : [a]   -- Defined in ‘GHC.Types’
infixr 5 :

[]
的定义充满了魔力;我对GHCi所说的任何事都持保留态度。我会称之为虫子。请随时在bug追踪器上报告。ghc 7.8.4也有同样的问题。@gallais你能提供一个答案吗?另一个答案已经尘埃落定了!我想知道是什么把它修好了——如果它只造成了这一个怪癖,我怀疑有人会介意。也许代码被重写是因为更重要的原因。
GHCi, version 8.0.0.20160316: http://www.haskell.org/ghc/  :? for help
Prelude> :info (:)
data [] a = ... | a : [a]   -- Defined in ‘GHC.Types’
infixr 5 :