我尝试使用foldr来反转列表,如下所示
fun rev(l)= foldr(a b => b ++ [a])[] l;
但是我收到了错误:stdIn:4.25错误:在DARROW找到语法错误
任何人都可以帮忙指出错误吗?代码是否正确?
谢谢。
答案 0 :(得分:0)
fn
开头。fn (a,b)
++
是Haskell中的concat运算符。在SML中,它是@
总而言之:
fun rev(l) = foldr (fn (a,b) => b @ [a]) [] l;
这确实颠倒了一个清单!