2つ(あるいはそれ以上)の関数を and でつないでいっぺんに定義できるがおもしろい。
and の後の関数には let rec が要らない。
# let rec even n = if n = 0 then true else odd (n - 1) and odd n = if n = 0 then false else even (n - 1) ;; val even : int -> bool = <fun> val odd : int -> bool = <fun> # even 3;; - : bool = false # even 4;; - : bool = true # odd 5;; - : bool = true # odd 8;; - : bool = false