我正在阅读 OCaml 的语言手册并遇到了“cons”运算符,表示为
::
但是,根本没有解释它是什么,以及它通常用于什么。
这是基本的列表结构运算符。该列表由运算符[1; 2; 3]
的三个应用构成::
:
$ ocaml
OCaml version 4.01.0
# 1 :: 2 :: 3 :: [];;
- : int list = [1; 2; 3]
(从 50 年前的 Lisp 早期开始,这个操作就被称为cons 。)
运算符也可以出现::
在模式中,以解构列表:
let rec length l =
match l with
| [] -> 0
| h :: t -> 1 + length t
还可以查看http://ocaml.org/learn/上的资源— 特别是,“Real World OCaml”一书有一个关于列表的部分。