And can be used by kooks to interpret it as correct:
Hee.
"kneed"?
Anyway, the fact is, no, I couldn't do that to most books -- especially
not good ones. Believe me, I *tried* to find problems in King's
"C Programming: A Modern Approach". I found a handful. They were
nearly always pure typos or things where, while what he said was correct,
I thought it could be clarified.
And "wasting bandwidth": Until you started this a few months ago,
Seebach had NEVER MENTIONED SCHILDT here for at least 7 years that I
can see. And he has only responded to a small proportion of your
provocations.
Uh-huh.
What would that be? A Gandhi-style "fast unto death" unless the page
is removed? A PETA-style naked picketing of Seebs' workplace? Mailing
packets of brown powder to Jimmy Wales with "The next one will be
anthrax unless you withdraw the Schildt page."? Or just blurting out
hundreds of posts here of psychotic rants?
My bet is on the latter.
Well, let's see.
I assume Nilges would be happy if I were to alter the page to clearly
indicate that:
* It described a previous edition.
* Some of the issues described had been corrected in future editions.
* The page was no longer current.
Right? (Because, hey, guess what... That might be about to happen.)
Hey, cool thing. C:TCR 3rd edition contains the egregious error of
claiming that you must use feof() to determine whether end of file
has occurred on a binary stream, "because EOF is a valid integer
value".
It claims this on getchar(), which is covered in C:TCN. In the 4th
edition, that language is removed from the getchar() example.
It also claims this on getc(), which is NOT mentioned in C:TCN. And
in the 4th edition... That language is still there.
Conclusion: It is no coincidence that things mentioned in C:TCN have
been fixed in the 4th edition. And the fact that some of them were
fixed *incorrectly* suggests to me that, quite possibly, Schildt really
simply *did not understand* the relevant material. The reason that
the horrible order-of-evaluation example was replaced, not with a
corrected example, but with a much simpler example, is perhaps that
Schildt couldn't make sense of the rules.
He removed the "obviously wrong" text from getchar() -- where I'd pointed
it out -- but not from getc(). In both cases, the examples of usage he
gives still use 'char ch' to store the results of getchar() or getc().
Which is to say... He didn't *understand* the criticism, so he just
reacted to the specific claim I called out, and didn't actually fix the
GLARINGLY OBVIOUS flaws in his sample programs.
Similarly, he fixed the error (page 247 in the 3rd edition) of using
fseek on a text-mode file.
Which is to say:
1. Schildt acknowledges, implicitly, that C:TCN is authoritative and
correct -- that is to say, the things where I was pointing out a
language feature, not just criticizing the readability of the writing,
have been corrected in the 4th edition.
2. Specifically, Schildt makes it clear that it is C:TCN itself, not
some other source, that he's working from, by editing EXACTLY the things
criticized, while leaving identical errors in place and failing to
address closely related flaws in example programs in the very next
paragraph.
3. Schildt still doesn't understand (or didn't when the 4th edition
came out) how getchar() works, or how you can tell when input has started
failing without using feof() or ferror().
4. In short, Nilges is completely wrong. The corrections in C:TCN are
recognized as authoritative and correct, and as denoting actual flaws
in C:TCR, by the author or technical editor.
5. In short, Nilges is completely wrong. Schildt does not understand
the material in the book well enough to comprehend the criticisms, which
is why his "fixes" are all at the brute-force level without any
resolution of the deeper issues with the poor writing or explanations.
Now that I've got such excellent evidence that, in fact, Schildt did
indeed correct things specifically because of C:TCN, I think we're done
here -- we've established with reasonable confidence that everyone,
including Schildt, grants the correctness of the criticisms in question.
-s