fun a(list) =
let
val num = length(hd(list))
fun inner(list) =
if num = length(hd(list)) then
if tl(list) = nil then true
else inner(tl(list))
else false
in
if length(hd(list))-1 = length(tl(list)) then inner(tl(list))
else false
end;
这是 ml 代码,我收到此警告并输入。
stdIn:6.16 Warning: calling polyEqual
val a = fn : ''a list list -> bool
我不明白这个警告。为什么出现和类型。''为什么它有两个'?''?'a list list 和 ''a list list 有什么区别?