soma.cell

== IS structural on lists, maps and variants

Pitfall 5 of writing Soma, the programming language: a habit from another language, or a rule that surprises, with what the Soma compiler answers and the form to write.

[1, 2] == [1, 2]                                  // true
map("US", 1, "EU", 2) == map("EU", 2, "US", 1)    // true — key order is irrelevant
[] == []                                          // true

<, > on lists or maps is an error (compare a field or len()), and values of different kinds are an error to compare (1 == "1"), not false.