C review

Jonathan Gingerich jon at campari.UUCP
Sat Jan 24 13:18:17 AEST 1987


While it is amusing to find the lang.c community asserting their
thorough knowledge of the 'typedef' command at the same time there is
evident confusion about the semantics of '|' and '||', it is annoying to
see the poor referee of Peter's book get so unanimously trashed.
There is much to object to in the replies, but the three most important
points are the following:

1)  It is very hard to judge the referees comments out of context.  For
instance when he states "...Switch/case could be classified as rarely used
and should be kept for later" there is no reason not to believe that he
is commenting on the relative placement of the switch/case discussion within
the book.  Nor can I tell if his comments about 'lvalues' are intended to
caution the authors about making unwarranted assumptions about their reader's
knowledge of the term or are suggesting the concept has little value,
if either.

2)  Most of his critics have misread his comments to set up straw men to
attack.  In the switch/case statement he merely says it "could be classified"
as a rare construction, yet many seem to think he is denigrating the 
construction itself.  Similarly, since the typedefs and the comma operator
are demonstratably unnecessary, his opinions opinions on industry knowledge
of these have nothing to do with their usefulness.

3) Finally, with irrasibility and rhetorical excess given its due, I think that
what he says may be essentially correct.  Simply because he has a dim
view of the general level of C knowledge, does not mean he approves of this.

I do find Peter's statement "It is not a intro text, it assumes the reader has
finished a course in Pascal" somewhat tautological.  My experience with
students with one Pascal course under their belt does not make me sanguine
about their abilities to absorb the whole of C.  I am curious how Peter 
handles the comma operator.  In my view there are three way to use it:
badly, not at all, or well (and therefore rarely).  Given that you are
dealing with beginners, you must either devote a lot of time explaining
how to use a rarely used construction properly, time which is better spent
elsewhere, or provide only the briefest description to baffle all but those
sophisticated enough to make proper use of it anyway.

In any event, none of the referee's quotes would make me dismiss him out of
hand.  Indeed, I would read his comments carefully, he may be Peter's
most valuable critic.  I am not convinced that the lang.c community has
the proper outlook to understand a beginners problems anyway.  Look how
much trouble we have explaining anything to each other! 
				Jon. Gingerich



More information about the Comp.lang.c mailing list