我目前正在尝试这个。
let L = [2; 4; 6; 8]
let fourth listx = List.nth(listx 3);;
fourth L;;
但我希望'a -> 'a
(列出清单)而不是int -> 'a
我该如何解决这个问题?
答案 0 :(得分:4)
你想要像
这样的东西let fourth listx = List.nth listx 3
这给出了'a list -> 'a
的签名,我认为你想要的是什么。关键的区别在于没有括号,在这种情况下不能达到预期的效果
答案 1 :(得分:0)
let fourth x = (fun x -> [x]) (List.nth x 3)
val fourth : x:'a list -> 'a list