【发布时间】:2019-02-06 03:54:49
【问题描述】:
当我运行我的 Haskell 程序时,我从 GHCI 收到以下错误:
"Pattern match(es) are non-exhaustive
In an equation for `recaList': Patterns not matched: (_:_:_)"
我一直在搜索 web/SO,但似乎找不到 (_:_:_) 是什么的解释。我的猜测只是一个空列表,但我已经在我的函数中考虑了这一点。
不确定是否相关,但这是我的程序:
recaList :: [Int] -> [Int]
recaList [] = []
recaList [x] = map recaMan [x]
我认为问题在于我不知道(_:_:_) 是什么。
【问题讨论】:
-
您可以在 Google 上搜索“模式匹配并非详尽无遗”。给出了许多相关的结果。 :) 关于“
_”:在纯文本中使用,它被解释为 SO 上的 斜体 标记(*也是如此)。要编写 code,我们通过将其括在反引号 ` 中来对其进行转义,如下所示:_italics_ marker(我输入了"`_italics_ marker`"。为了显示包含反引号的代码,我们将其括在双反引号中。
标签: haskell pattern-matching non-exhaustive-patterns