On Friday, 21 August 2015 at 09:14:16 UTC, Kagamin wrote:
On Thursday, 20 August 2015 at 20:26:09 UTC, David Nadlinger wrote:
It's even worse: http://dpaste.dzfl.pl/ba3376feca8e

The arrays are equal, but their Boolean value is not.

I don't get how Andrei can reconcile this with his "D avoids unforced errors" stance.

The only technical excuse for the bug is code breakage, which can be mostly addressed by dfix, but that's yet another problem: tools like dfix are shunned for some reason.

I don't think that the use of dfix is shunned. Rather, dfix is shunned as a solution, because it requires that you run it. Walter gets unhappy about changing compiler flags even if the fix to existing code is trivial, because it requires that someone change their build scripts. The simply fact that code broke - regardless of how easy it is to fix - seems to be enough for Walter to think that it's a terrible idea. So, given Walter's attitude on that, I don't think that it really matters how good dfix is. Even if it were guaranteed to perfectly change all code that it was run on to fix whatever broke with a compiler or library change, the fact that you had to run it to fix the breakage was already too much.

I think that most of us would agree that if a change is desirable (assuming that code breakage is not taken into account) that if dfix is able to just fix whatever code breakage occurs, then the breakage isn't a big deal (at least as long as it's made clear to everyone getting the new release what the breakage is and that dfix will fix it for them). But Walter definitely does not seem to agree with that. Breakage is breakage no matter how easy it is to fix. Upon occasion, he will agree that something is worth breaking because of some huge benefit that we get from it, but that's pretty rare, and most of stuff that folks want to see broken to clean up the language definitely doesn't bring enough of a benefit for him to agree to it.

- Jonathan M Davis

Reply via email to