2

我想编写一个函数来检查 SML 中列表的相等性,例如:[1,2,3]=[1,2,3]; val it = true : bool

因此,我不想写下整个事情,而是想创建一个接受两个预定义列表并比较它们的函数,这样如果 list01 = [1,2,3] 和 list09 = [1,2,3] 那么 fun equal (list01,list09); 将返回 -val it = true : bool;

提前感谢任何想法/提示和帮助:)

4

2 回答 2

7

您似乎知道这=适用于列表,所以(正如我在评论中已经说过的)我不明白为什么需要定义一个equal函数。

话虽这么说,你可以写:

fun equal (a, b) = (a = b);
于 2010-09-29T10:27:33.060 回答
1

这是一个未检查的示例:

fun compare ([], []) = true # both empty
    |   compare (x::xs, y::ys) = (x = y) and compare(xs,ys)
    |   compare (_, _) = false # different lengths
于 2010-09-29T09:37:18.070 回答