我想写一个SML函数,它有两个参数,第一个是 int,第二个是列表的列表。目标是在第二个参数中的每个列表的前面插入第一个参数。例如,append_to_front(1,[[3,4],[6,8],[]])
应返回[[1,3,4],[1,6,8],[1]]
。SML:错误:运算符和操作数不一致[tycon不匹配]
我的代码:
fun append_to_front(a:int, L:int list list) =
if L = []
then []
else a::hd(L)::append_to_front(a, tl(L));
,我得到的错误信息:错误:运算符和操作数不同意[tycon不匹配]。为什么?
你也可以用更高阶的函数来解决这个问题:'append_to_front(x,L)= map(fn xs => x :: xs)L' –