【问题标题】:Haskell - A problem with non-exhaustive patterns in functionHaskell - 功能中非详尽模式的问题
【发布时间】:2021-11-30 10:05:35
【问题描述】:

我有以下haskell代码:

为什么x0的模式匹配不到函数f

【问题讨论】:

标签: haskell functional-programming pattern-matching


【解决方案1】:

yys 是列表的两个元素。因此,这意味着模式:

(x,xs) : [y, ys](x, xs) : y : ys : [] 的缩写。因此,该列表包含 三个 项:第一项是 2 元组 (x, xs),第二项是 y,第三项是 ys

因此,您可以将其与:

--      ↓      ↓        ↓ three items in the sublist
[   [(1,[1]),(1,[1]), (1,[1])]]

或者你应该匹配这个:

f :: [[(a, [b])]] -> Int
f (((x, xs) : _) : y : _) = 0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-06
    • 2019-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多