Haskell:绑定位置的合格名称?

use*_*558 5 haskell

我在文件test.hs中编写了一个代码,如下所示:

Mp1.gcd a =a
Run Code Online (Sandbox Code Playgroud)

当我编译它时,有一个错误如下:

"绑定位置的合格名称:Mp1.gcd失败,模块已加载:无"

我使用Mp1.gcd,因为官方api有"gcd"

这是我的命名约定的问题吗?我该如何解决?

ick*_*fay 6

您可以在不对其进行限定的情况下对其进行定义:

gcd a = {- ... -}
Run Code Online (Sandbox Code Playgroud)

然后在导出列表中限定它:

module MyModule (MyModule.gcd) where
Run Code Online (Sandbox Code Playgroud)

或者,通过排除Prelude's来消除冲突的可能性gcd:

import Prelude hiding (gcd)
Run Code Online (Sandbox Code Playgroud)