On Dec 13, 2006, at 1:28 PM, Marco Trudel wrote:
David Daney wrote:
Casey Marshall wrote:
In general I really urge against going out of our way to support
behavior like this.
Can you explain that further? You're against changes that
- keep the specification as correct as they were before
- will adapt classpath to the RI behavior
- will prevent users from running into problems
- restore old classpath behavior (regression fix)
- have no negative side effects whatsoever
Sorry if that seems to be a mean summary. This are just the points
I'm seeing
and I'm actually really surprised about the number and kind of
reactions to that patch or that the mentioned bugreport has been
closed as invalid.
It is not a bug. 'Nuff said. I was replying to David, not to you.
I would have assumed that someone says: "Hey great, this only fixes
problems and doesn't do anything bad. Let's commit it".
Huh? Didn't I say that?
My reply (which you trimmed away) said this:
"I agree, since we have a patch. As long as it tests out OK, I'm not
opposed to including it."
So as I said, I don't mean to offend you, I just can't follow why
we wouldn't follow the RI when we still fulfill the specifications.
I did say that I was against *going out of our way* to adhere to the
precise behavior of the RI, when neither the spec nor the algorithms
used require it.
It's fine if you want to go looking for things like this, and writing
fixes for them. These are not a bugs, though, and are not a priority.
To be blunt about it, I don't care if you waste your time doing this,
but I am not going to.
I changed my mind! As a matter of principle, since I had to fix
my code, everyone should have to suffer in the same manner, as
their penalty for disobeying the mandates of the specification! :)
Whaaat? David! I really hope - for the sake of humanity - that
you're joking. Ah right, there's a ":)" at the end. I was so
shocked from that statement that I missed it first...
In this case, the Comparator is still wrong. It may work now with
Classpath's binarySearch, but it is *in general* broken. If it gets
used with some other algorithm, it may not work.
HIDING BUGS IN CODE IS BAD.