相关疑难解决方法(0)

n + k模式的模式中的haskell解析错误

我已经开始通过Erik Meijer的13个部分讲座(以及Graham Hutton的幻灯片)来学习Haskell.

在第4章的幻灯片上,第13页介绍了n + k模式的模式匹配语法.特别是,它说:

与数学一样,整数函数可以使用n + k模式定义,其中n是整数变量,k> 0是整数常量.

pred :: Int -> Int
pred (n+1) = n
Run Code Online (Sandbox Code Playgroud)

当我在REPL中自己尝试这个时,我收到一条错误消息:

*Main> let mypred (n+1) = n

<interactive>:65:13: Parse error in pattern: n + 1
Run Code Online (Sandbox Code Playgroud)

同样,如果我在*.hs文件中尝试它

mypred :: Int -> Int
mypred (n+1) = n
Run Code Online (Sandbox Code Playgroud)

编译器给出了类似的抱怨:

/Users/pohl/Code/praxis-haskell/helloworld.hs:14:9:
    Parse error in pattern: n + 1
Run Code Online (Sandbox Code Playgroud)

我不明白如何使用n + k模式?

haskell pattern-matching ghci

17
推荐指数
2
解决办法
2987
查看次数

标签 统计

ghci ×1

haskell ×1

pattern-matching ×1