在学习SML的过程中,我提出了以下问题。看看这个例子:
fun check (elem,myList) =
let
fun check1 elem [] = fn (x,_,_) => elem > x
fun check2 elem [] = fn (_,y,_) => elem < y
in
if check1 andalso check2 then 1 else 0
end问题是IF THEN规则在这里不起作用。为什么?据我所知,check1和check2应该返回BOOL值,这允许使用IF THEN。我试图声明局部变量,但这无助于解决问题。
发布于 2011-12-19 21:45:07
check1和check2是函数,而不是bool值。想必你会想要把它们应用到某些东西上吧?
https://stackoverflow.com/questions/8562095
复制相似问题