let rec fold_inorder f acc t =
match t with
| Leaf -> acc
| Node (l, n, r) -> f (fold_inorder f acc l) (f n (fold_inorder f acc r))
Я пытаюсь напечатать вложение дерева следующим образом:
fold_inorder (fun acc x -> acc @ [x]) [] (Node (Node (Leaf,1,Leaf), 2, Node (Leaf,3,Leaf))) = [1;2;3]
Я получаю сообщение об ошибке, говоря, что мой [x] равен
This expression has type 'a list
but an expression was expected of type 'a
The type variable 'a occurs inside 'a list
Я действительно не уверен, что делать отсюда. Кто-нибудь может подтолкнуть меня в правильном направлении?