Haskell中'@'运算符的含义是什么

我有这个代码:

  mix xxs@(x:xs) yys@(y:ys)
  | x<=y = x : mix xs yys
  | otherwise = y : mix xxs ys

但我不知道是什么@意思。

回答

它不是运营商;它是模式语法的一部分。在 的情况下yys@(y:ys),如果第二个参数与 成功匹配(y:ys),则匹配的整个值也将绑定到yys

因此,如果您调用min [1,2] [3,4],则将y绑定到3ys[4]yys[3,4]


以上是Haskell中'@'运算符的含义是什么的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>