If those were the things I was looking into, I would certainly not want a bare sort for any of them.
If you anticipate repeated elements, you'd probably want a tie-breaking
$a cmp $b
(the bare sort comparison function) on all but the first, because non-identical terms can otherwise compare equal and identical elements may not be adjacent in the sorted output.
But I think we are in fundamental agreement: You need to know what you are comparing and how. That may be easier said than done. Knowing that "machenry" is a Scottish name, but "machinery" is not (or is it, and, if not, why not) makes "knowing what you are comparing" non-trivial.