[plt-scheme] Naming an equality operator

From: Carl Eastlund (carl.eastlund at gmail.com)
Date: Fri Feb 17 19:18:52 EST 2006

One personal coding project I have been working on is an extensible
equality operator (think equal?, but you can override its behavior on
certain types of values it will encounter along its traversal). 
Before I do anything rash like use it in distributed code, or
distribute it as a planet package, I'd like to have a good name for
the operator.  Currently our namespace is pretty cluttered with
equality operators - each type has one, like string=? and bytes=?, and
there are already three generic equalities (eq?, eqv?, and equal?). 
So what is a good name for a third?

For now I've called it "equality", but that's not a great name. 
(equality A B) doesn't suggest the right thing, it's the wrong part of
speech or something and it doesn't have a ? to suggest a predicate. 
What do people think about the names "same?", "equals?", or "equ?"
[pause to distance one question mark from another] ?  Does anyone have
a better name?

As a separate note, I often find cases where I have equality
predicates and ordering functions, and both can be called
"comparisons", which leads to confusion.  Does the word "comparison"
suggest one or the other?  Is there a better word or words to
distinguish the two?

Carl Eastlund
"Cynical, but technically correct."

Posted on the users mailing list.