我遇到n+k
模式的问题。
我想启用它,但我不知道如何。
我在{-# LANGUAGE NPlusKPatterns #-}
文件的开头添加了.hs
,但它没有用。
此外,我尝试在我的ghci控制台-NPlusKPatterns
中插入错误,但只是给了我错误。
答案 0 :(得分:5)
您需要输入
:set -XNPlusKPatterns
在ghci中启用它们。
为了完整性,我要指出,如果从命令提示符加载ghci而不是运行winghci,则可以使用ghci -XNPlusKPatterns
加载它而不是交互式地执行:set -XNPlusKPatterns
。
您可以通过交互式定义n + k模式来检查它是否正常工作。这是一个示例会话:
Prelude> let fact 0 = 1; fact (n+1) = (n+1)*fact n in fact 5
<interactive>:8:23: Parse error in pattern: n + 1
Prelude> :set -XNPlusKPatterns
Prelude> let fact 0 = 1; fact (n+1) = (n+1)*fact n in fact 5
120