我想要做一个列表的差异。找到了直接在 Prelude 中使用的运算符\\\\
,它可以实现列表的差异。但是会出现错误Not in scope: '\\\\'
。这里是我的简单命令行解释器:
Prelude> ([1,2,3] ++ [5,6]) -- works like expected
[1,2,3,4,5,6]
prelude> ([1,2,3] \\\\ [1,2]) -- erros occurs
<interactive>:1:11: Not in scope: "\\\\"
感谢您解释我的错误。
import Data.List
。(在 GHCi 中,需要使用:module + Data.List
代替。) - Antal Spector-ZabuskyPrelude> import Data.List
导入模块。我之前一直使用:m +Data.List
。 - max taldykin:set prompt ">>> "
或任何您喜欢的字符串。我导入的模块列表占据了整个控制台一行的位置,这样很不方便。请您自行决定是否需要翻译术语“console”和“module”。 - luquiimport Data.Set
时,这个不起作用。有什么解决方法吗? - daparicData.List
和Data.Set
时,(\\)
是有歧义的。有多种解决方案。例如,你可以使用import qualified Data.Set
或者通过使用import Data.Set hiding ((\\))
隐藏(\\)
的集合版本。请参阅 Haskell Wiki 以获取更多关于导入的详细信息。 - Michal