Sml 为什么下面的函数没有结束?

Sml 为什么下面的函数没有结束?,sml,smlnj,Sml,Smlnj,为什么下面的函数没有结束 (* funct1 is a different function that does end *) fun funct(a,b::bs)=let val c=a in funct1(c,a,b::bs); = ; = ; = ; = ; stdIn:15.54-17.2 Error: syntax error: deleting SEMICOLON SEMICOLON SEMICOLON 在这种情况下,错误消息非常有用。函数没有结束,因为您需要end关键字而不是

为什么下面的函数没有结束

(* funct1 is a different function that does end *)
fun funct(a,b::bs)=let val c=a in funct1(c,a,b::bs); 
= ;
= ;
= ;
= ;
stdIn:15.54-17.2 Error: syntax error: deleting  SEMICOLON SEMICOLON SEMICOLON

在这种情况下,错误消息非常有用。函数没有结束,因为您需要
end
关键字而不是
。这是SML中的
let…in…end
块的语法

fun funct (a, b::bs) = let val c = a in funct1 (c, a, b::bs) end