Re: First class developer: who ?




"Arved Sandstrom" <dcest61@xxxxxxxxxxx> wrote in message
news:RFomn.67942$Db2.60974@xxxxxxxxxxx
Lew wrote:
sl@my-rialto wrote:
Someone says if one does not know the difference between "equality" and
"equivalence", then one is an entry-level developer at best.

What is your opnion ? (I think we should not talk about mathematical
concepts, since it is the software developer in question.)

Patricia Shanahan wrote:
I think the question needs some context to make sense. Both terms are
very heavily overloaded in computer science.

For example, consider the following: "The equals method implements an
equivalence relation on non-null object references:"

http://java.sun.com/javase/6/docs/api/java/lang/Object.html#equals(java.lang.Object)

Maybe this is a rather vague way of getting at the following issue: I
would indeed expect a competent Java developer to understand the
difference, in Java, between a.equals(b) and a==b for reference
expressions a and b.

Well, there we go introducing mathematical concepts, from right there in
the Javadocs, no less!, despite the OP's attempt to eliminate the only
reasonable context in which to answer his point.

Both terms actually have clear English meanings - "equality" means (or
should mean) that two things *are* the same, and "equivalence" means (or
should mean) that two things can be substituted, that they behave the same
way.

A mathematical and CS definition in fact tracks the common English
meanings of these 2 words, and the language concerning Object.equals that
Patricia quoted does say exactly this: equals is an implementation of
equivalence.

My point is that the common English, the mathematical and the CS
definitions of the two terms are pretty much the same. And programming
languages that differentiate between the two also track those definitions.
We see that Java does.

Having said all this I did have to do a few minutes of research to remind
myself that the way the words are used in math and in CS are also what
they mean in common speech. And I don't normally walk around thinking that
equals is an implementation of an equivalence relation. :-)


I will assert here that even in English their meanings are not sufficiently
solid to make this point.
the words in natural speech tend to float all over the place, and to say
solidly that X means Y is misguided at best.

even "trivial" words, such as "the" or "an" have no clearly defined meaning,
and tend to vary from one context to the next, and depend on the words to
which they apply, ...

"logic" is then almost meaningless on natural speech, and one is probably
far better off with a probablistic interpretation.


"look, hand raised birds" vs "look, hand raised children" (or "look, hand
raised, children", ...).

the first 2 have different meanings even though the structure is about the
same, and the 3rd means something different despite using the same words in
the same order.

birds may be raised by hand, children may raise hands, and children may be
told that the proper way to ask the questions is to have hand raised. (with
awkwardities in interpretations as to confuse even native speakers...).


it is not meaningful to expect much more than this.



.



Relevant Pages

  • Re: First class developer: who ?
    ... "equivalence", then one is an entry-level developer at best. ... would indeed expect a competent Java developer to understand the ... A mathematical and CS definition in fact tracks the common English meanings of these 2 words, and the language concerning Object.equals that Patricia quoted does say exactly this: equals is an implementation of equivalence. ...
    (comp.lang.java.programmer)
  • Re: First class developer: who ?
    ... and "equivalence", then one is an entry-level developer at best. ... In fact when the word "equal" is applied in the sense of gender equality, or equality before the law, or "all men are created equal", such qualifications are made. ... We make exactly the same qualifications in a programming language like Java when we write equals() methods. ...
    (comp.lang.java.programmer)
  • Re: First class developer: who ?
    ... and "equivalence", then one is an entry-level developer at best. ... equivalence relation on non-null object references:" ... would indeed expect a competent Java developer to understand the ...
    (comp.lang.java.programmer)
  • Re: First class developer: who ?
    ... "equivalence", then one is an entry-level developer at best. ... equivalence relation on non-null object references:" ... would indeed expect a competent Java developer to understand the ...
    (comp.lang.java.programmer)
  • Re: First class developer: who ?
    ... then one is an entry-level developer at best. ... What is your opnion? ... difference, primarily because people would claim "equivalence" when it was, in fact, not present, and thus the Jim Crow laws were finally repealed. ...
    (comp.lang.java.programmer)