I would be in favor of reducing the number of convenience variations of this function, but that can be done later. Notice that in the documentation at the beginning of the file compare/2 and compare/3 are explicitly named.