У меня есть задание, которое требует написания кода в список накидной без использования каких-либо функций библиотеки это мой кодобъединение списка в OCaml без использования библиотеки
let rec union (l1:'a list) (l2:'a list) =
let rec f x l = match l with
| [] -> true
| hd::tl ->
if x = hd then false else f x tl
in
match l2 with
| [] -> l1
| hd::tl ->
if f hd l1 then
union hd::l1 tl
else
union l1 tl
но компилятор говорит, что «Это выражение имеет тип 'a, но ожидалось выражение типа' list Тип переменной 'a встречается внутри' списка
Может ли кто-нибудь помочь мне выяснить, где я сделал ошибку? спасибо
Спасибо иа много! Оказывается, я забыл круглые скобки, я думал, Ocaml может интерпретировать его автоматически, не знал, что он настолько чувствителен. –