有没有办法隐藏gcd?

Ale*_*lex 0 haskell overriding haskell-prelude

我正在重写gcd任务的函数,但是当我试图隐藏时gcd,如下所示:

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

我收到错误

输入'gcd' 解析错误。

我确定我已经完成了 的重新定义gcd,但我无法阻止错误

模棱两可的情况,可以参考“Prelude.gcd”

除非我设法隐藏gcd

这是我的完整代码(抱歉找不到上传文件):

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

这是我更改为后的错误import Prelude hiding (gcd)

错误

Jos*_*ica 6

如果你想从一个模块中隐藏多个东西,你需要导入一次并指定要隐藏的所有东西。将其导入两次将导致每一行的排除使另一行无效。所以改为这样做:

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

(正如前面在评论中提到的,gcd不是运算符,所以它不应该像||这样在它周围有括号。)