在一个文件中,我需要使用常规的前奏(++)
运算符,并且我还希望为(++)
. 我import Prelude hiding (++)
在文件顶部使用过,定义了自己的(++)
运算符,现在在下面我希望参考常规 Prelude 的(++)
. 我如何实现这一目标?
问问题
5120 次
2 回答
24
写
import qualified Prelude
此外
import Prelude hiding ((++))
在代码的开头,写在 PreludePrelude.++
中需要的地方。++
于 2011-11-06T22:25:14.660 回答
4
正如 Tsuyoshi Ito 解释的那样,您可以通过模块名称来限定操作员。但是,由于通过定义您自己的版本,(++)
您很可能希望增加程序的可读性,因此稍后用其模块名称限定运算符似乎是一种奇怪的措施。
看看这个:"abc" Prelude.++ "def"
现在这很难看。
为什么不简单地创建一个新的运算符,<++>
比如 `append` 之类的中缀函数?
于 2011-11-06T22:40:08.373 回答