运算符和操作数不同意ML

时间:2017-02-09 21:54:06

标签: ml

我正在为一个类的函数工作,我收到了这个错误。

错误:运算符和操作数不一致[tycon mismatch]

运营商域名:'Z列表

操作数:'Y列表 - > 'Y list

表达式中的

:     null tl

fun removedub(L) =
  if (null L) then nil
  else if (null tl(L)) then hd(L)
  else if hd(L) = hd(tl(L)) then removedub(tl(L))
  else hd(L) :: removedub(tl(L));



val list = ["a", "a", "b", "b", "c"];

removedub(list);

我不知道如何解决这个问题,或者确实是什么导致它,任何提示?

1 个答案:

答案 0 :(得分:0)

您将括号设置错误。当你写

null tl(L)

然后它与

具有相同的含义
null(tl)(L)

但是,你想要

null(tl(L))