Итак, я совсем новичок в OCaml и довольно медленно продвигаюсь в реализации своих первых функций. Мне трудно понять, когда следует использовать возможности сопоставления шаблонов, такие как
let foo =
[] -> true
| _ -> false;;
или использовать структуру if else, такую как
let foo a =
if a = [] then true else false;;
Когда мне следует использовать каждую из них?