代码之家  ›  专栏  ›  技术社区  ›  kesarling

这个Haskell列表理解是如何评估的?

  •  0
  • kesarling  · 技术社区  · 11 月前

    我是 learning Haskell和我在列表理解方面遇到了这个例子:
    [x | xs <- [[(3,4)],[(5,4),(3,2)]], (3,x) <- xs]
    给出的答案是:
    [4,2] .

    为什么没有答案 [(3,4),(3,2)] ?

    1 回复  |  直到 11 月前
        1
  •  0
  •   Naïm Favier    11 月前

    匹配 (3,x) 反对 (3,4) 给予 x = 4 。如果你愿意 (3,4) ,你应该写 [(3,x) | ...] .