Palavra-chave "as" no OCaml
Nas respostas para os tutoriais para OCaml disponíveis emesse site, algumas das soluções, incluindo a que elimina duplicatas consecutivas dos elementos da lista, são escritas da seguinte forma:
let rec compress = function
| a :: (b :: _ as t) -> if a = b then compress t else a :: compress t
| smaller -> smaller;;
Qual é a relevância da linhaa :: (b:: _ as t)
? Por que não consigo escrever comoa :: b :: t
em vez de?