Я работаю над "99 проблемами Ocaml", и в решении я вижу этот образец соответствия:
let rec compress (mylist : 'a list) : 'a list = match mylist with
|a::(b::_ as t) -> if a = b then compress t else a::compress t
|smaller -> smaller
Я понимаю, что для первого соответствующего случая, если элемент a совпадает с элементом b, я перехожу к списку t. Если нет, я добавлю элемент a в список сжатия t.
Для второго подходящего случая я не уверен, что типа "меньше".
Когда я пытаюсь поставить вокруг него квадратную скобку, так как думаю, что автор хочет сопоставить второй случай с одним списком элементов, но у меня есть неисчерпывающий шаблон.
Можете ли вы объяснить мне, что такое "меньше" в этом случае?