Search code examples
equalitysml

Checking for equality in lists in SML


i want to write a function that checks for equality of lists in SML for instance :

[1,2,3]=[1,2,3];
val it = true : bool

So instead of writing down the whole thing, i want to make a function that takes two predefined lists, and compare them, so that if list01 is [1,2,3] and list09 is [1,2,3] then fun equal (list01, list09); will return -val it = true : bool;


Solution

  • Here is a not checked sample:

    fun compare ([], []) = true # both empty
      | compare (x::xs, y::ys) = (x = y) and compare(xs,ys)
      | compare (_, _) = false # different lengths