OCaml一人勉強会 - パターンマッチ

関数型といえばパタ略。
まあ何かリストやタプルやバリアントなどを操作する時に便利なナニです。
先頭の要素が1だったらtrueを、そうでなかったら0を返す処理を書きたいときは大体こんな感じ。

# match [1; 2; 3] with
  1 :: rest -> true
  | some -> false;;
- : bool = true
# match (1,2) with
  (1,_) -> 1
  | (_,_) -> 0;;
- : bool = true

同じことをやっているようで実は違う。タプルの方は要素数が二つの場合に限定されています。
「_」はまあ見れば分かりそうですがワイルドカードパターンと呼ばれるもので名前のとおりの物です。