In seems the documentation should provide the user with not only true information but useful information.  The reader wants to know how to construct a valid compare function.  I.e., it should be EITHER 1) a binary function that returns explicitly `false` if two given elements are out of order, `false` if the values are equal, and explicitly `true` (as opposed to any truthy value) 
otherwise OR 2) a binary function that returns a negative, zero, or positive integer indicating the relative order of its arguments.  for more details of corner cases, see ...