"smaller" OCaml 中的关键字(?)
"smaller" keyword(?) in OCaml
OCaml表单here教程的解决方案中,关于消除列表元素连续重复的,代码是这样写的:
let rec compress = function
| a :: (b :: _ as t) -> if a = b then compress t else a :: compress t
| smaller -> smaller;;
以前没见过关键字(?) "smaller",网上查了没找到。虽然在这种情况下,我理解它的意思,但我仍然想知道是否有人可以对此进行更多解释。谢谢!
smaller
不是关键字,它是标识符,就像a
、b
和t
之前上线一样
模式 smaller
仅匹配任何可能的值(未被任何先前模式匹配)并为其命名 smaller
.
您可能想阅读第 Lists and Patterns in the book Real World OCaml 章。
OCaml表单here教程的解决方案中,关于消除列表元素连续重复的,代码是这样写的:
let rec compress = function
| a :: (b :: _ as t) -> if a = b then compress t else a :: compress t
| smaller -> smaller;;
以前没见过关键字(?) "smaller",网上查了没找到。虽然在这种情况下,我理解它的意思,但我仍然想知道是否有人可以对此进行更多解释。谢谢!
smaller
不是关键字,它是标识符,就像a
、b
和t
之前上线一样
模式 smaller
仅匹配任何可能的值(未被任何先前模式匹配)并为其命名 smaller
.
您可能想阅读第 Lists and Patterns in the book Real World OCaml 章。