Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C Programming > C: The Complete Nonsense (4th Edition)

Reply
Thread Tools

C: The Complete Nonsense (4th Edition)

 
 
Seebs
Guest
Posts: n/a
 
      04-09-2010
Based on feedback from people here, I've concluded that it was possible
that the earlier edition of C: The Complete Nonsense did not provide the
reader with a fair, accurate, and reasonably comprehensive picture of
the quality of Herbert Schildt's book, "C: The Complete Reference".

Having put a few hours of work into reviewing the current edition, I have
created a new page which analyzes it in some detail. I have concluded that
the previous document significantly understated the abundance and depth of
misunderstandings and errors in Schildt's book. Even the 4th edition, in
which several errors pointed out in my previous page have been corrected,
continues to astound me with the sheer depth of its errors.

Perhaps more importantly, I had not previously noticed, or remarked on,
the great volume of things which were simply not covered by Schildt, which
should have been in any book purporting to teach C or to serve as a reference
for it. In fact, the errors of omission are in some cases more serious.

Anyway, here we have it:

http://www.seebs.net/c/c_tcn4e.html

Special thanks to a number of reviewers and commenters, especially Keith
Thompson and der Mouse, both of whom caught me out in a number of humorous
errors. (For what it's worth, I believe that one or two cases were ones where
I had mistakenly identified some of Schildt's writing as being in error, and
a dozen or more were cases where I had failed to spot all of the errors.)

As always, comments, corrections, and feedback are welcome. (Disclaimer:
By standing policy, I will delete any private contacts from Nilges unread.
I also won't actually read his posts, except for amusement value. If someone
thinks he's spotted a genuine error, feel free to bring it to my attention,
but I won't be holding my breath.)

-s
--
Copyright 2010, all wrongs reversed. Peter Seebach / http://www.velocityreviews.com/forums/(E-Mail Removed)
http://www.seebs.net/log/ <-- lawsuits, religion, and funny pictures
http://en.wikipedia.org/wiki/Fair_Game_(Scientology) <-- get educated!
 
Reply With Quote
 
 
 
 
Uno
Guest
Posts: n/a
 
      04-09-2010
Seebs wrote:
> Based on feedback from people here, I've concluded that it was possible
> that the earlier edition of C: The Complete Nonsense did not provide the
> reader with a fair, accurate, and reasonably comprehensive picture of
> the quality of Herbert Schildt's book, "C: The Complete Reference".
>
> Having put a few hours of work into reviewing the current edition, I have
> created a new page which analyzes it in some detail. I have concluded that
> the previous document significantly understated the abundance and depth of
> misunderstandings and errors in Schildt's book. Even the 4th edition, in
> which several errors pointed out in my previous page have been corrected,
> continues to astound me with the sheer depth of its errors.
>
> Perhaps more importantly, I had not previously noticed, or remarked on,
> the great volume of things which were simply not covered by Schildt, which
> should have been in any book purporting to teach C or to serve as a reference
> for it. In fact, the errors of omission are in some cases more serious.
>
> Anyway, here we have it:
>
> http://www.seebs.net/c/c_tcn4e.html
>
> Special thanks to a number of reviewers and commenters, especially Keith
> Thompson and der Mouse, both of whom caught me out in a number of humorous
> errors. (For what it's worth, I believe that one or two cases were ones where
> I had mistakenly identified some of Schildt's writing as being in error, and
> a dozen or more were cases where I had failed to spot all of the errors.)
>
> As always, comments, corrections, and feedback are welcome. (Disclaimer:
> By standing policy, I will delete any private contacts from Nilges unread.
> I also won't actually read his posts, except for amusement value. If someone
> thinks he's spotted a genuine error, feel free to bring it to my attention,
> but I won't be holding my breath.)


I guess I heard that from Heathfield years ago. Is anyone buying or
publishing this book still?
--
Uno
 
Reply With Quote
 
 
 
 
James Harris
Guest
Posts: n/a
 
      04-09-2010
On 9 Apr, 01:15, Seebs <(E-Mail Removed)> wrote:
....
> * * * *http://www.seebs.net/c/c_tcn4e.html

....
> As always, comments, corrections, and feedback are welcome.


I can only really provide positive feedback. The examples are clear
and the page is very easy to read. I almost laughed out loud when I
read the acknowledgements.

A clickable table of contents would be helpful, something like

http://codewiki.wikispaces.com/bit_count_fast.c

I read your page as a block of text but some navigation aids or visual
clues to delimit sections and subsections would be useful for looking
back. The current header sizes are a clue but only a small one.

James
 
Reply With Quote
 
Malcolm McLean
Guest
Posts: n/a
 
      04-09-2010
On 9 Apr, 01:15, Seebs <(E-Mail Removed)> wrote:
> Based on feedback from people here, I've concluded that it was possible
> that the earlier edition of C: The Complete Nonsense did not provide the
> reader with a fair, accurate, and reasonably comprehensive picture of
> the quality of Herbert Schildt's book, "C: The Complete Reference".
>

You seem to have addressed most of my criticisms in the new version.
I'll have to actually get a copy of Schildt if I'm to comment much
more on this.

One new criticism I'd make is that the original was about the right
length for a review, this is over-long for that purpose. You might
like to think or rewriting the inital section so it can stand alone.


 
Reply With Quote
 
Zarquon
Guest
Posts: n/a
 
      04-09-2010
Seebs wrote:
[snip]
> Having put a few hours of work into reviewing the current edition, I have
> created a new page which analyzes it in some detail. I have concluded that
> the previous document significantly understated the abundance and depth of
> misunderstandings and errors in Schildt's book. Even the 4th edition, in
> which several errors pointed out in my previous page have been corrected,
> continues to astound me with the sheer depth of its errors.
>
> Perhaps more importantly, I had not previously noticed, or remarked on,
> the great volume of things which were simply not covered by Schildt, which
> should have been in any book purporting to teach C or to serve as a reference
> for it. In fact, the errors of omission are in some cases more serious.
>
> Anyway, here we have it:
>
> http://www.seebs.net/c/c_tcn4e.html
>

[snip]

Puzzlingly, this page appears to claim to be a year old, and this post
appears to claim that the page is new. What happened?

--
Thinkers travel in cognito.
 
Reply With Quote
 
Keith Thompson
Guest
Posts: n/a
 
      04-09-2010
James Harris <(E-Mail Removed)> writes:
> On 9 Apr, 01:15, Seebs <(E-Mail Removed)> wrote:
> ...
>> * * * *http://www.seebs.net/c/c_tcn4e.html

> ...
>> As always, comments, corrections, and feedback are welcome.

[...]
> A clickable table of contents would be helpful, something like
>
> http://codewiki.wikispaces.com/bit_count_fast.c
>
> I read your page as a block of text but some navigation aids or visual
> clues to delimit sections and subsections would be useful for looking
> back. The current header sizes are a clue but only a small one.


It does have a clickable table of contents; scroll down about a page
from the top to the "Contents:" section.

--
Keith Thompson (The_Other_Keith) (E-Mail Removed) <http://www.ghoti.net/~kst>
Nokia
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
 
Reply With Quote
 
Seebs
Guest
Posts: n/a
 
      04-09-2010
On 2010-04-09, Malcolm McLean <(E-Mail Removed)> wrote:
> On 9 Apr, 01:15, Seebs <(E-Mail Removed)> wrote:
>> Based on feedback from people here, I've concluded that it was possible
>> that the earlier edition of C: The Complete Nonsense did not provide the
>> reader with a fair, accurate, and reasonably comprehensive picture of
>> the quality of Herbert Schildt's book, "C: The Complete Reference".


> You seem to have addressed most of my criticisms in the new version.
> I'll have to actually get a copy of Schildt if I'm to comment much
> more on this.


> One new criticism I'd make is that the original was about the right
> length for a review, this is over-long for that purpose. You might
> like to think or rewriting the inital section so it can stand alone.


I don't really intend it as a review, so much as a meta-reference; something
people can go to when asking the question "why do people claim that Schildt
doesn't understand C". (Answer: Because he clearly could not figure out how
to address the order-of-evaluation, or EOF, criticisms.)

-s
--
Copyright 2010, all wrongs reversed. Peter Seebach / (E-Mail Removed)
http://www.seebs.net/log/ <-- lawsuits, religion, and funny pictures
http://en.wikipedia.org/wiki/Fair_Game_(Scientology) <-- get educated!
 
Reply With Quote
 
Seebs
Guest
Posts: n/a
 
      04-09-2010
On 2010-04-09, Zarquon <(E-Mail Removed)> wrote:
> Puzzlingly, this page appears to claim to be a year old, and this post
> appears to claim that the page is new. What happened?


.... I got the year wrong.

As I said, I absolutely DO NOT claim to not be prone to trivial and
obvious mistakes.

-s
--
Copyright 2010, all wrongs reversed. Peter Seebach / (E-Mail Removed)
http://www.seebs.net/log/ <-- lawsuits, religion, and funny pictures
http://en.wikipedia.org/wiki/Fair_Game_(Scientology) <-- get educated!
 
Reply With Quote
 
Seebs
Guest
Posts: n/a
 
      04-09-2010
On 2010-04-09, Richard Harter <(E-Mail Removed)> wrote:
> If you don't mind, I will review your review.


I am not sure that this document is a "review".

> "The Structure of Scientific Revolutions, 3rd edition, Thomas S.
> Kuhn, 1996, paperback, University of Chicago Press, ISBN
> 0-226-45088-3"


> There are key pieces of information here, the book title, the
> author, the edition, the date of publication, the publisher, and
> the identifier. Carefully identifying the work you are reviewing
> is rather like getting the prototype for main correct.


And if this were a "book review", I would definitely have done something
like that. I suppose I could do it anyway, but this is not a review.

> The entire "objections" section could be profitably omitted. The
> function of reviews is to critique the work being reviewed.
> Polemics and self justifications are not to the point.


Again, this is not a review; it's a position paper on the question of whether
Schildt's writing is garbage.

> Similarly
> we do not need to know details of your personal life, e.g., that
> you are autistic. Let your review stand on its own feet; do not
> prop it up with crutches. Similarly the entire section "Herbert
> Schildt and C: The Complete Nonsense" could profitably be
> replaced by a single paragraph, a single sentence, or even
> deleted entirely.


I disagree. Again, if this were a review, and a review of a single book,
that section would be irrelevant. But it's not. This is a discussion of
the question of whether C:TCR illustrates a complete failure on Schildt's
part to understand some basic components of C.

For that, it is important that the reader see that, confronted with reports
of blatant errors, Schildt could remove the offending material, but could
not correct it. Similarly, it's very instructive to note that, while Schildt
removed the offending sentence from the description of getchar(), he neither
removed the same sentence from the description of getc(), nor updated the
example to be correct.

> What is wanted in this kind of review is an overview of the book,
> its structure, its virtues such as they are, the kinds of errors
> made, and its target audience.


I was unable to find any virtues, and the structure of the book was
uninteresting to me.

> Are there entire topics where the treatment is fundamentally
> mistaken, or are the errors mostly at a low level. This is an
> important issue. Low level errors are readily corrected;
> fundamental misunderstandings are more serious.


As pointed out, there does not seem to be a single reference, anywhere,
to structure padding.

> From your text I
> gather that most of the errors are:


> (a) The use of DOS centric forms rather than the more general and
> more portable forms specified by the standard.


These seem to be much reduced in the 4th edition.

> (b) Simple slop - typos and other small errors that should have
> been caught in editing.


It's hard to tell typos from misunderstandings. Is "=+" a typo, or
a conceptual error? I have no idea. His writing is not consistently
good enough for me to be sure he didn't intend it.

> (c) Misuderstandings of basic utilities, e.g., feof.


That, I think, rises to the level of a "fundamental misunderstanding".
He doesn't show any comprehension of how conversions (such as character
to unsigned char to int) work.

> (d) Code examples at does not work or even compile.


Most of them look like they'd compile now, most of the time.

> (e) Code examples that have undefined behaviour.


Yes.

> (f) Incorrect explanations of correct code.


Yes.

> (g) Bad style. By this I mean the failure in code to check for
> errors and handling them.


I'm fairly content to let someone skip error checking in a book,
at least some of the time. What bothers me is stuff like gets().

> It would have been better if your review that there is little
> discussion of subjects such as undefined behaviour and
> implementation defined behaviour.


Ahh, but I haven't checked it out to see whether those topics might
be covered somewhere. I probably should at some point, but that wasn't
the primary topic of interest to me.

I just wanted to see whether the book was still littered with errors. It
is.

> Similarly, is there any discussion of the variety of
> implementation environments. At the time of the 4th edition
> there were numerous unix and unix clone environments, DOS and NT,
> DEC VMS and even a MVS implementation. Beyond that the hosted
> implementations there are free standing environments. What about
> this profusion of possible environments does the book say, if
> anything?


Nothing significant that I spotted. This could arguably be justified
by claiming that, since the examples are portable, such details are
irrelevant.

-s
--
Copyright 2010, all wrongs reversed. Peter Seebach / (E-Mail Removed)
http://www.seebs.net/log/ <-- lawsuits, religion, and funny pictures
http://en.wikipedia.org/wiki/Fair_Game_(Scientology) <-- get educated!
 
Reply With Quote
 
James Harris
Guest
Posts: n/a
 
      04-09-2010
On 9 Apr, 16:40, Keith Thompson <(E-Mail Removed)> wrote:
> James Harris <(E-Mail Removed)> writes:
> > On 9 Apr, 01:15, Seebs <(E-Mail Removed)> wrote:
> > ...
> >> * * * *http://www.seebs.net/c/c_tcn4e.html

> > ...
> >> As always, comments, corrections, and feedback are welcome.

> [...]
> > A clickable table of contents would be helpful, something like

>
> > *http://codewiki.wikispaces.com/bit_count_fast.c

>
> > I read your page as a block of text but some navigation aids or visual
> > clues to delimit sections and subsections would be useful for looking
> > back. The current header sizes are a clue but only a small one.

>
> It does have a clickable table of contents; scroll down about a page
> from the top to the "Contents:" section.


My bad. I was thinking about something more detailed - for example,
under the Pick-a-Page section clickable links to the page numbers; and
under the Higher-Level Problems heading a clickable entry for each
problem. My only complaint is that with no indentation the document is
a bit monolithic.

James
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
An actual error found in C: The Complete Nonsense! Seebs C Programming 18 11-15-2010 05:01 PM
C the complete nonsense Malcolm McLean C Programming 389 04-17-2010 01:46 PM
What IS going on in "C: the Complete Nonsense"? spinoza1111 C Programming 0 01-02-2010 06:00 PM
C: The Complete Meta-Nonsense spinoza1111 C Programming 142 11-21-2009 02:43 PM
Tired of Nonsense Sasha Y. Gupta MCSE 26 07-15-2004 07:53 PM



Advertisments