If you are ok with a contrived example, I could define:
-type vec2() :: {float(), float()}.
-type vec3() :: {float(), float(), float()}.
And have the useful property that vec2() < vec3(). What kind of program needs this? Not sure, but it’s a useful property nonetheless. I don’t think that lexicographic ordering is always superior.






















