我写了一个叫product
功能:为什么此代码会导致“模糊变量发生”错误?
product [] = 1
product (x:xs) = x * product xs
当我将其加载到WinHug:
错误文件:\ product.hs:4 - 模糊的变量发生的 “产品”
** *可以参考:Main.product Hugs.Prelude.product
这是什么意思?
我写了一个叫product
功能:为什么此代码会导致“模糊变量发生”错误?
product [] = 1
product (x:xs) = x * product xs
当我将其加载到WinHug:
错误文件:\ product.hs:4 - 模糊的变量发生的 “产品”
** *可以参考:Main.product Hugs.Prelude.product
这是什么意思?
的product
功能defined in the Haskell Prelude.
您当地的定义冲突与库版本。
考虑将您的版本重命名为例如myproduct
或import Prelude hiding (product)
。
而且,你可能要考虑using GHC instead of Hugs.
已经有一个在Haskell Prelude命名product
功能。
顺便说一句,你应该安装Haskell Platform而不是拥抱;拥抱是一个不再被维护的旧项目,GHC/i得到了更好的支持并具有更多特征。即使你的学校希望你使用Hugs,私自使用GHCi的Haskell平台也没有什么坏处。