Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Herbert Schildt, author of The Complete C++ Reference (NOT C Unleashed) rehabilitated on wikipedia

3 views
Skip to first unread message

spinoza1111

unread,
Jan 15, 2008, 7:52:04 AM1/15/08
to
The article below contained a serious typo, my error, and I will post
this main article just to clarify the issue at the top level.

Richard Heathfield, a well-known poster in this newsgroup, edited C
Unleashed.

I got a non-anonymous wikipedia editor to remove the libel from the
Schildt article, which apparently had been created in order to post
criticism of Schildt, but under stress due to thread vandalism, I
mistyped the header of the article below.

If anyone knows if the header can be fixed, let me know.

Again, my apologies for this error.

Edward G. Nilges

(author of "Build Your Own .Net Language and Compiler", Apress 2004)

Richard Heathfield

unread,
Jan 15, 2008, 8:15:53 AM1/15/08
to
spinoza1111 said:

> The article below contained a serious typo, my error, and I will post
> this main article just to clarify the issue at the top level.
>
> Richard Heathfield, a well-known poster in this newsgroup, edited C
> Unleashed.

Wrong. Gus Miklos edited "C Unleashed". You have already been told this.

--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999

spinoza1111

unread,
Jan 15, 2008, 11:59:44 AM1/15/08
to
On Jan 15, 9:15 pm, Richard Heathfield <r...@see.sig.invalid> wrote:
> spinoza1111 said:
>
> > The article below contained a serious typo, my error, and I will post
> > this main article just to clarify the issue at the top level.
>
> > Richard Heathfield, a well-known poster in this newsgroup, edited C
> > Unleashed.
>
> Wrong. Gus Miklos edited "C Unleashed". You have already been told this.

You are listed first as the lead author. OK, you didn't "edit" it.
That's normally a job for a publisher's employee. So you're the
instigator of this book, and as the instigator you appear to have
started a campaign to discredit Schildt, who when your book was
published was a C authority.

Schildt was writing on C++ but of necessity had to write about C,
since C is embed within C++ to the extent that many "C programmers"
perforce use C++ compilers (making a mess thereby, but that's the name
of the game, isn't it). As the lead author (whose name appears first
but not in alpha order) you were conducting a campaign against Schildt
when I first started visiting comp.programming, and you tried that
shit on me when I posted a well-received review of Steve McConnell's
book After the Gold Rush.

Schildt was a well-known C authority by 1998 based on his 1989 Tiny C
interpreter and Born to Code, therefore Job One for you and the gang
was to discredit him. You made a major business and marketing error,
which was to knock the competition and as a result your book has been
withdrawn, apparently due to low sales.

PROFESSIONALS in PROFESSIONAL fields don't create Web pages listing
the errors of their colleagues. In real professions, they report
provable and far more than *de minimis* cases of malpractice to
practice boards. PROFESSIONALS in PROFESSIONAL fields extend
PROFESSIONAL self-restraint and courtesy because part of being a
professional in a scientific field is making an error (such as
confusing && and ||) and having the expectation that this not discount
your real contributions.

I believe that you and the overlarge group of authors of your out of
print book conspired to create usenet content, Amazon content, and a
bit later wikipedia content that would lower Herb's sales by calling
him just wrong when as a mentor he wrote things that real C++ and C
programmers need to know: that ASCII is almost always represented in 8
bits and that negative numbers are twos complement.

Herb made no claims that his information was part of any standard. He
seems instead to have underestimated the forces gathered around C
standardization, commercial forces that were inappropriately trying to
create the illusion, in the computing public's mind, that IF C was
standardized, THEN they could trust C programmers not to create
machine-dependent garbage. Herb was just trying to prepare his reader
for using a range of mutually semi- and in- compatible compilers in
the real world.

The standardization effort itself may have been a vaster conspiracy.
The fact is that any C program can be changed at any time to something
that erases boot sectors and does a great deal of damage...yet still
compile with nary an error. This had created by 1990 the perception
that C was on its way out, and this threatened the livelihoods of
programmers unwilling to learn much of anything knew, since they were
too busy improving their golf score. Therefore the standardization
effort was started to give C a coat of paint and to put this turkey on
the old used car lot.

You vandalize threads, as you vandalized Herb's reputation, by
inventing, any way you can, some quibble or technicality so that you
can create a "rap sheet" of the "errors" your enemies make, and refer
to this rap sheet whenever they speak or write, telling newbies not to
listen to them.

You have shown zero sense of proportion in doing so as in the
absurdity of the 32 bit byte. You are engaged in a form of insider
trading here for commercial gain.

Your style is on trial here, Mr. Heathfield. You've vandalized this
thread and had you any decency you would have left it alone. If you'd
cared about comp.programming reflecting anything like reality despite
its deficiencies you would have kept your yap shut.

But as in the case of Mr. Schildt, you neglect no opportunity, not to
learn or practise your profession, but to diminish other people's
reputations precisely so you can be accounted some sort of guru.

Richard Heathfield

unread,
Jan 15, 2008, 12:37:36 PM1/15/08
to
[In this reply, I focus purely on the technical aspects, as before.
All your polemic, rhetoric, abuse, and other such idiocies have
been snipped, unmarked. If you want to read them again, by all means
refer to the parent article to this reply.]

spinoza1111 said:

> On Jan 15, 9:15 pm, Richard Heathfield <r...@see.sig.invalid> wrote:
>> spinoza1111 said:
>>
>> > The article below contained a serious typo, my error, and I will post
>> > this main article just to clarify the issue at the top level.
>>
>> > Richard Heathfield, a well-known poster in this newsgroup, edited C
>> > Unleashed.
>>
>> Wrong. Gus Miklos edited "C Unleashed". You have already been told this.
>
> You are listed first as the lead author. OK, you didn't "edit" it.

Well done. For once, you only needed telling twice.

> That's normally a job for a publisher's employee. So you're the
> instigator of this book,

Wrong. The book was instigated, as far as I can tell, by Sams Publishing.
Why not try astounding your readership by getting things right
occasionally?

> and as the instigator you appear to have
> started a campaign to discredit Schildt, who when your book was
> published was a C authority.

Schildt has never been a C authority. The "campaign", as you call it, to
draw attention to Schildt's habitual errors was well under way long before
I first posted to Usenet, as I have already pointed out to you.

Malcolm McLean

unread,
Jan 15, 2008, 1:28:29 PM1/15/08
to

"spinoza1111" <spino...@yahoo.com> wrote

>PROFESSIONALS in PROFESSIONAL fields don't create Web pages listing
>the errors of their colleagues. In real professions, they report
>provable and far more than *de minimis* cases of malpractice to
>practice boards. PROFESSIONALS in PROFESSIONAL fields extend
>PROFESSIONAL self-restraint and courtesy because part of being a
>professional in a scientific field is making an error (such as
>confusing && and ||) and having the expectation that this not discount
>your real contributions.
>
Anyone can describe himself as a "programmer" and find paid employment in
the field. There is no professional body.

As you rightly point out, professionalism is always a fine balance between
protection of the public and conspiracy against the laity. It is thus rather
more effective than trades unionism, and probably we would all benefit
personally from professionalisation.

--
Free games and programming goodies.
http://www.personal.leeds.ac.uk/~bgy1mm

spinoza1111

unread,
Jan 15, 2008, 9:29:20 PM1/15/08
to
On Jan 16, 1:37 am, Richard Heathfield <r...@see.sig.invalid> wrote:
> [In this reply, I focus purely on the technical aspects, as before.
> All your polemic, rhetoric, abuse, and other such idiocies have
> been snipped, unmarked. If you want to read them again, by all means
> refer to the parent article to this reply.]
>
> spinoza1111 said:
>
> > On Jan 15, 9:15 pm, Richard Heathfield <r...@see.sig.invalid> wrote:
> >> spinoza1111 said:
>
> >> > The article below contained a serious typo, my error, and I will post
> >> > this main article just to clarify the issue at the top level.
>
> >> > Richard Heathfield, a well-known poster in this newsgroup, edited C
> >> > Unleashed.
>
> >> Wrong. Gus Miklos edited "C Unleashed". You have already been told this.
>
> > You are listed first as the lead author. OK, you didn't "edit" it.
>
> Well done. For once, you only needed telling twice.

Your role is not to "tell" me anything, because you are only posing as
a teacher here.


>
> > That's normally a job for a publisher's employee. So you're the
> > instigator of this book,
>
> Wrong. The book was instigated, as far as I can tell, by Sams Publishing.
> Why not try astounding your readership by getting things right
> occasionally?

So they just looked you up in the phone book? I rather doubt it.

>
> > and as the instigator you appear to have
> > started a campaign to discredit Schildt, who when your book was
> > published was a C authority.
>
> Schildt has never been a C authority. The "campaign", as you call it, to
> draw attention to Schildt's habitual errors was well under way long before
> I first posted to Usenet, as I have already pointed out to you.

No, Schildt established his chops in 1989 when he wrote a tiny-C
interpreter, for a non-standard version of a language that cannot be
standardized, and published "born to code" in 1990.

You instigated a destructive, noncollegial and unprofessional campaign
on behalf of a group of authors (one of whom posts here, Ben Pfaff) to
downgrade Schildt, based on the fraud that C can be standardized and
used for new development.

Chris McDonald

unread,
Jan 15, 2008, 9:47:23 PM1/15/08
to
spinoza1111 <spino...@yahoo.com> writes:

>You instigated a destructive, noncollegial and unprofessional campaign
>on behalf of a group of authors (one of whom posts here, Ben Pfaff) to
>downgrade Schildt, based on the fraud that C can be standardized and
>used for new development.

Edward, how many times are you going to repeat your bleating?

You will not change Richard's interpretation of his own actions.
The readship here (if many remain) have already have made up their own
minds on the matter - and I can't see many rushing to support your opinions,
(oops, didn't mean support, "to bully your opinions").

Basically, give it a rest - we're sick to death of your continued prattle
in our (jointly shared) newsgroup. You won't "win", Richard won't "win",
and the rest of us clearly don't care about the topic.

--
Chris.

Richard Heathfield

unread,
Jan 16, 2008, 1:18:59 AM1/16/08
to
spinoza1111 said:
> On Jan 16, 1:37 am, Richard Heathfield <r...@see.sig.invalid> wrote:
>> spinoza1111 said:
>>
>> > So you're the
>> > instigator of this book,
>>
>> Wrong. The book was instigated, as far as I can tell, by Sams
>> Publishing. Why not try astounding your readership by getting things
>> right occasionally?
>
> So they just looked you up in the phone book? I rather doubt it.

The initial contact was from Sams, not from me. If you don't believe that,
that's entirely up to you. You seem to have belief and disbelief
completely mixed up. But I guess that's entirely up to you too.

spinoza1111

unread,
Jan 16, 2008, 5:08:41 AM1/16/08
to
On Jan 16, 10:47 am, Chris McDonald <ch...@csse.uwa.edu.au> wrote:

Richard Heathfield instigated the thread vandalism. This is what he
does. He attempted to vandalize the reputation of Herb Schildt to
enhance sales for his book, he consistently vandalizes that of people
who do not agree with his uneducated ideas about the viability of C,
and he did so as soon as I re-entered.

You're too cowardly to complain to Richard who as the instigator, the
aggressor and the bully is the one responsible for the lengths of
these exchanges IF I have, as I believe I have, an elementary right of
self-defense against a personal attack. You're too cowardly because
you know that Richard conducts these attacks, and enables others to
take them to disgusting extremes, whereas you think I might have fewer
allies and would thus make an easier target.

The bully-enabler says "what is truth?" and believes a proposition
which, if true, would in fact constitute a strong argument against
freedom of speech, implying as it does its futility in achieving its
stated goal, which is, quite simply, to change another person's view.

Programmers who have sold their soul to an out of date artifact look
within themselves and find no willingness to change owing to the meal-
ticket factor of the lower middle class, but I'd not, if I were you,
class everyone you meet into that category.

You're sick to death? If you had any decency, if you had any courage,
you'd be sick to death of Heathfield's behavior.
>
> --
> Chris.

spinoza1111

unread,
Jan 16, 2008, 5:26:31 AM1/16/08
to
On Jan 16, 2:18 pm, Richard Heathfield <r...@see.sig.invalid> wrote:
> spinoza1111 said:
>
> > On Jan 16, 1:37 am, Richard Heathfield <r...@see.sig.invalid> wrote:
> >> spinoza1111 said:
>
> >> > So you're the
> >> > instigator of this book,
>
> >> Wrong. The book was instigated, as far as I can tell, by Sams
> >> Publishing. Why not try astounding your readership by getting things
> >> right occasionally?
>
> > So they just looked you up in the phone book? I rather doubt it.
>
> The initial contact was from Sams, not from me. If you don't believe that,
> that's entirely up to you. You seem to have belief and disbelief
> completely mixed up. But I guess that's entirely up to you too.

Did Sams authorize you to go after Schildt? I don't care. I believe
you went after him unprofessionally and for commercial gain. You have
failed because his book is in print and yours isn't, and you, or
people probably your partners in crime, have been convicted of
wikipedia vandalism by virtue of the changes made by a non-anonymous
editor.

I don't think Sams advised you to trash Schildt, because good
businessmen don't knock the competition and their lawyers would advise
against it. Instead, I think you conspired with the other authors to
do so, perhaps in a naivety similar to that of Brutus in Julius
Caesar.

That is: just as Brutus thought he was doing Rome a service by
assassinating Caesar, you may have thought that you owed the C
standard a duty to correct Herb's apparent falsifications.

That would be praiseworthy and was in fact somewhat courageous as was
Brutus' joining the conspiracy. In a different situation, I would have
supported your crusade, since I do think people should speak out.

Had Herb claimed, as you have claimed, that C is viable for new
development after about 1995, I would have supported a crusade, not
against him, but against the claim. However, I am a more skilled
writer than you, therefore I would have not used his patronymic as
much, preferring to focus on what he says.

However, just as Brutus failed to make one key step, and reflect that
as of the morning of the assassination, Caesar had NOT made himself
king (the pretext for the conspiracy being that he would), which means
the Brutus committed simple murder.

Likewise, you failed to take into account that (1) Herb was teaching C
and C++ to real programmers using a range of compilers with
nonconformant and mutually incompatible behavior and (2) no artifact
is worth the sacrifice of the reputation of a private citizen who
sought no fame outside of being a computer book author.

The Roman Republic may have been worth assassinating Caesar IF Caesar
had taken the purple. But given the fact that I believe, and on which
others concur with me, that C "standardization" is futile and
pernicious, this means that you conspired to character-assassinate
Herb for a shitty reason.

C standardization is futile because it won't change a line of bad C
code, nor prevent bad C code (like my C code, written after a long
vacation from C and filled with boners idiomatic to C by virtue of
that fact) from being written; my C code has no bad impact since it
has no mission other than exemplary, but C standardization is an
almost-criminal attempt to encourage the life critical development of
new C code which will have uncontrollable behavior.

C standardization is malicious-pernicious because it is intended to
give the impresssion to MIS managers that just because a standard
exists, their C coders can write new code which will be magically
"safe".

Note: if you think Shakespeare is off-topic, all this means is further
evidence that lack of general culture results in lack of computing
culture.

moi

unread,
Jan 16, 2008, 6:32:54 AM1/16/08
to
On Wed, 16 Jan 2008 02:26:31 -0800, spinoza1111 wrote:


> C standardization is futile because it won't change a line of bad C
> code, nor prevent bad C code (like my C code, written after a long
> vacation from C and filled with boners idiomatic to C by virtue of that
> fact) from being written; my C code has no bad impact since it has no
> mission other than exemplary, but C standardization is an
> almost-criminal attempt to encourage the life critical development of
> new C code which will have uncontrollable behavior.
>
> C standardization is malicious-pernicious because it is intended to give
> the impresssion to MIS managers that just because a standard exists,
> their C coders can write new code which will be magically "safe".
>

Herbert Schildt is futile because he won't change a line of bad C


code, nor prevent bad C code (like my C code, written after a long
vacation from C and filled with boners idiomatic to C by virtue of that
fact) from being written; my C code has no bad impact since it has no

mission other than exemplary, but Herb Schildt is an


almost-criminal attempt to encourage the life critical development of
new C code which will have uncontrollable behavior.

Herbert Schildt is malicious-pernicious because it is intended to give
the impresssion to MIS managers that just because a Schildt exists,


their C coders can write new code which will be magically "safe".

You See ?
:-)

AvK

spinoza1111

unread,
Jan 16, 2008, 7:40:35 AM1/16/08
to

No, I don't. You think it's nonsense because you don't understand it.
Your pathetic rewrite exposes your incomprehension.
>
> AvK

Stephen Howe

unread,
Jan 16, 2008, 9:01:54 AM1/16/08
to
> I got a non-anonymous wikipedia editor to remove the libel from the
> Schildt article, which apparently had been created in order to post
> criticism of Schildt

But that is your own pet theory. And the evidence does not support the
facts.
Schildt has been writing sub-standard C and C++ books since at least 1995,
long before 2000. YOUR A FANTASIST NILGES

Stephen Howe


Stephen Howe

unread,
Jan 16, 2008, 9:39:53 AM1/16/08
to
>>> Basically, give it a rest - we're sick to death of your continued
>>> prattle
>>> in our (jointly shared) newsgroup. You won't "win", Richard won't "win",
>>> and the rest of us clearly don't care about the topic.

>Richard Heathfield instigated the thread vandalism. This is what he
>does.

No he didnt. That is just your prattle.

>He attempted to vandalize the reputation of Herb Schildt to

>enhance sales for his book...

No he didnt. That is your pet theory. And it does not stand up.
Schildt has been criticised seriously since at least 1995.
(i) Clive Feather reviewed one of Schildt's book because of the sheer
quanity of errors. That was 1995 - 13 year ago.
(ii) ACCU have been reviewing Schildt's books since ACCU started (at least
20 years) and miost reviews are damning.
ALL THIS HAS POINTED OUT TO YOU, YOU CAN GO AND SEE THE EVIDENCE YOURSELF.
BUT DO YOU LEARN? NO !!!!
STILL CLINGING TO YOUR FANTASIES ON SHILDT AND HEATHFIELD NILGES?
Harbison & Steele's book on C will be steady seller but I dont see evidence
of Richard complaining on that.

>, he consistently vandalizes that of people who do not agree with his

>uneducated ideas...

What "uneducated ideas" Nilges?
Your uneducated.
You seem ignorant of ISO standards on ASCII, C and C++, still clinging to
your pet ideas on them, none of which stand up.
Richard does not cling to his own pet theories.

>You're too cowardly to complain to Richard who as the instigator, the
>aggressor and the bully is the one responsible for the lengths of
>these exchanges IF I have, as I believe I have, an elementary right of
>self-defense against a personal attack.

They are not personal.

> You're too cowardly...

Right, so you now accuse Chris of cowardice.

> because
> you know that Richard conducts these attacks, and enables others to
> take them to disgusting extremes, whereas you think I might have fewer
> allies and would thus make an easier target.

He does not know anything of the sort. That is just your fantasy.

> Programmers who have sold their soul to an out of date artifact look
> within themselves and find no willingness to change owing to the meal-
> ticket factor of the lower middle class, but I'd not, if I were you,
> class everyone you meet into that category.

No. The Programmers have move on.
But Programmers respect accuracy and historical records and dont attempt to
rewrite history as you do.
We use Unicode, UTF-8, UTF-16 these days, but when we refer to ancient
ASCII, we know it is 7-bits, because that is history, that was how it was in
the beginning.

>You're sick to death? If you had any decency, if you had any courage,
>you'd be sick to death of Heathfield's behavior.

Heathfield is not the one who posted provocative off-topic starter articles

"Kernighan scum project status announced from spinoza1111"
"Advice to adult victims of cyberbullying"
"maybe I'm not worthy, maybe I am scum"
"Why I've returned"
"Brian Kernighan, maybe I'm not worthy, maybe I am scum"

YOU DID !!!!

Why dont you retire to oblivion Nigles?
Go and entertain the fiction that you were driven off the newsgroup to the
poor souls that listen to your drivel rather than the fact that people would
not put up with your rewritten history of events.

Stephen Howe


Walter Banks

unread,
Jan 16, 2008, 9:53:49 AM1/16/08
to

spinoza1111 wrote:

> He attempted to vandalize the reputation of Herb Schildt to
> enhance sales for his book,

Any book publisher and any reputable author will tell you
that sabotaging the competition's similar book product
will be counter productive on sales.

The Schidt's works that I have looked at have a lot of
misleading information in them, including statements that
are simply not true.

Enough of this bilge.

w..

spinoza1111

unread,
Jan 16, 2008, 11:33:59 AM1/16/08
to
On Jan 16, 10:53 pm, Walter Banks <wal...@bytecraft.com> wrote:
> spinoza1111 wrote:
> >  He attempted to vandalize the reputation of Herb Schildt to
> > enhance sales for his book,
>
> Any book publisher and any reputable author will tell you
> that sabotaging the competition's similar book  product
> will be counter productive on sales.

Yes, it is. However, I believe that based on what I've seen here, as
well as on Amazon and wikipedia, on Schildt, Heathfield et al. did try
to sabotage Schildt. This may be why C Unleashed is out of print,
whereas the Complete C++ Reference is not, although it was published
at the same time.


>
> The Schidt's works that I have looked at have a lot of
> misleading information in them, including statements that
> are simply not true.

You've just participated in the campaign, perhaps as a dupe...perhaps
unwillingly. I believe that Heathfield et al. started a whispering
campaign about Schildt's "errors" which deliberately reinterpreted
them out of context, acting as if an out-of-date, non-deterministic,
and non-standardizable language with multiple incompatible compilers
IN REALITY was a fixed standard, which the teacher should to adhere to
at the cost of comprehension.

Here, and in an independent thread, I shall start a review of "The
Annotated Annotated C Standard" at http://www.lysator.liu.se/c/schildt.html,
the source of many of the attacks on Schildt.

Here are some examples of Schildt's "errors". The text of "The
Annotated Annotated C Standard" is unprefixed, whereas paragraphs by
Schildt and Nilges are prefixed by our names. This is part one of a
multipart post.


The Annotated Annotated C Standard
C.D.W.Feather

Text quoted directly from the book is indicated by ## in the left
margin.

The front cover of the book shows, amongst much clutter and someone's
half-eaten muffin, page 147 of the standard. It is intriguing to note
that, not only is this the obsolete ANSI standard rather than the ISO
standard, but that it corresponds to half of page 146 in the book.

-Nilges->Tsk, tsk, clutter: meant by the illustrator (not Schildt) to
show an orientation towards the needs of the working C programmer
working with multiple nonconformant-in-the-main C compilers. Anything
at all to extend the charge sheet?

3.13
-Schildt->## However, this limits the total character set to 255
characters.

Actually, it limits it to UCHAR_MAX characters, which is at least 255,
but can be more. There was an opportunity here to explain what
multibyte characters actually are, but it seems to have been missed,
possibly because of the lack of space

-Nilges->This is a favorite hobby-horse of the hortatory Heathfield.
In reality, any C programmer who merely changes what is only a
#define, e.g., a text-replacement macro with file scope, without
auditing EACH AND EVERY LINE for character width dependent operations
such as shift and rotate is incompetent, whereas in Java, C Sharp, and
even Visual Basic .Net this is a replacement of a data type name with
block scope. Pragmatically Schildt is telling students what they need
to know.

3.14
-Schildt-> An object is either a variable or a constant that resides
at a
## physical memory address.

In C, a constant does not reside in memory, (except for some string
literals) and so is not an object.

-Nilges->These types of dogmatic statements show that the speaker has
no compiler or interpreter experience and is a lousy teacher to boot.
Schildt developed a Tiny-C interpreter in 1989 and is a good teacher.
The standard is silent on where constants are. For clarity, Schildt
oversimplifies since numeric constants as an implementation detail
that has nothing to do with either "standard" C or C in practice may
indeed be in non-addressable locations on the stack (members of which,
however, usually have an address inaccessible except to pathological,
if "standard" C code), or inside machine instructions. The point is a
quibble made solely to extend Schildt's rap sheet.

5.1.1.3
The standard is clear that diagnostics are required when syntax rules
and constraints are violated, and are optional otherwise. This is not
covered at all. Instead we get the vague statement that
-Schildt-> The standard requires that a compiler issue error messages
when
## an error in the source code is encountered.

without discussing the different kinds of errors.

-Nilges->Although this is NOT an "error" at all, the purpose being to
ruin Schildt's reputation, it is treated as a countable error. I am
disgusted by this. This is amateur editing by people who can't
themselves write.

5.1.2.2
-Schildt-> You are therefore free to declare main() as required by
your
## program.

This statement is immediately followed by the example:
void main (void)

even though the text of the standard directly opposite states that
this is undefined. Indeed, the text I quote makes me wonder whether
Schildt believes that:
struct foo { int i; double d; } main (double argc, struct foo
argv)

is permitted !
Most of the examples in the book declare main() as void. I won't
bother to point them out individually.

-Nilges-> Everybody knows this to be unfashionable (see Stroustrup's
FAQs). Nobody knows why it's important. It is not. In practice, nobody
calls main(). If it is a serious error for a given compiler, then it
should produce a diagnostic, or, perhaps a new type of diagnostic:
Unfashionable Code.

-Nilges-> The lack of compassion, the lack of a sense of proportion,
and the artifact worship is the nastiest sort of geekdom at its worst.
Even if a given set of programmers is misled by Schildt (which hasn't
been established at all) they are not held harmless "just because it's
in a book". They are responsible for interpretation as we all are: no
text can provide the "literal" truth...not even the Bible or Qu'ran,
and, *a fortiori*, no goddamn computer book.


5.1.2.2.1
-Schildt-> Though most compilers will automatically return 0 when no
other
## return value is specified (even when main() is declared as
## void), you should not rely on this fact because it is not
## guaranteed by the standard.

Indeed it is not. If main() is declared as void, I don't know of any
compiler that will return 0. Indeed, the standard forbids it to !

-Nilges-> A non-error is counted as an error. You people make me sick
to my stomach and want to throw up.

5.1.2.3
This section is often called the "as if" rule, because it says that an
implementation may do anything providing that the effect is "as if"
the exact wording of the standard was followed. This is almost
completely ignored in favour of explaining "side effect" and
"automatic storage".

-Nilges-> A matter of style and literary criticism is counted as an
error by people who cannot write. You people make me sick to my
stomach and want to throw up.

5.2.1.2
## Therefore, a multibyte character is a character that requires
## more than one byte.

Ignoring the fact that "character" and "byte" are synonymous in the
standard (something that is not mentioned in the annotations), the
definition of multibyte character is clear that it *does* include
single byte characters.

-Nilges-> A quibble is counted as an error.. And if "character" and
"byte" are synonymous in the standard, then C is useless for
international applications.


## First, the null character may not be used except in the first
## byte of a multibyte sequence.

I read this as meaning that the multibyte character <00><94> is legal
while the multibyte character <94><00> is not. In actual fact, the
standard states that a zero byte must not appear in any multibyte
character other than the null character (i.e. the end of string
indicator). This means that string operations such as strcpy will
work as expected with multibyte character sequences.
There was an opportunity here to explain multibyte characters and how
to use them, something that most books omit. Unfortunately, this one
omits it as well.

-Nilges->A world-class MISTAKE (the FAILURE to support Nuls as
ordinary characters) in C is used to beat the Herbster guy. Again,
people who cannot write try to tell a writer how to write...and count
this nonsense as an error in order to pad a rap sheet.


5.2.3
-Schildt-> In other words, one copy of a library function in memory
may
## not be used by two or more currently executing programs.

This is blatant nonsense - on most Unix systems, if the same program
is executing several times, all the code is shared by both processes.
Indeed, many go further and share one copy of the standard C library
among every process on the system.
What this section of the standard is talking about is re-entrancy.
The functions in the library are not re-entrant, and so may not be
called from within themselves. For example:

qsort() cannot be called from within the compare function passed to
qsort();
if a signal can be raised within a library function (perhaps by an
external event such as the user pressing a BREAK key), then the signal
handler must not call that library function.
The latter rule is particularly important: code using malloc must not
call malloc from within signal handlers.

-Nilges->The attackers of Schildt have themselves ignorantly misused
"re-entrancy". "Re-entrancy" does not mean "can be used recursively"
although it implies recursive callability. It means that the re-
entrant code does not include variables that not on the stack but in
its common memory allocated, in C's limited way, outside function
space; local variables occupy new places on the stack when the "re-
entrant" routine is called by itself or concurrently in a new thread,
whereas so-called "global" variables occupy fixed locations allocated
when the first call of the "re-entrant" code is made.

The overuse of so-called "global" variables is usually the mark of an
incompetent programmer, and C programmers have no clear mental
distinction between pure procedures and procedures with state. The
association of the procedure with state is something that has to be
discovered by examining a file.

Herb is right, depending on multiple nonconformant and incompatible
implementations, as a matter of humane teaching of a mistake. This was
the failure by Kernighan and Ritchie to come to terms with Algol and
the stack, and thereby to enable code that would keep state in overly
global variables with file scope.

As such, Kernighan and Ritchie extended the lifetime of a major
mistake in "the infantile disorder", which was to fail to recognize
the meaning of a procedure with state, versus a stateless procedure.

Herb gives the safest possible advice because the C programmer does
not know the complexity of any given library function, and whether it
has state. In fact, this is a major defect of nearly all non-OO
languages: it is impossible to tell whether a library function has
state, whereas this is made clear, in C Sharp, by the use of the
static keyword as part of its public contract...which forces the
programmer to keep the contract, not only with the compiler, but also,
and more importantly, with the user.

You cannot malloc() inside of malloc() inside of a signal handler.
This is obscene, but it is implied by what Herb says.

This is the end of part One as I walk through the annotated-annotated
C standard, which in reality is an unethical and uncollegial attack on
a computer author, probably mounted for commercial gain, both to
promote a competing book, and to maintain the illusion that
"standardizing C will bring it back to life". It is written by people
who unlike Herb don't know what goes on in sufficient detail at
compile and run time, and replace this aporia in their knowledge by
folk "wisdom" and their own brand of obscene and idolatrous techno-
worship, a form of religion which requires, in its blindness, a new
Spanish Inquisition.

Nobody expects a Spanish Inquisition, but these in fact have been a
feature of a world which, as Dijkstra prophesied, is in the process of
collapse owing to the unmastered complexity of its data system, a
collapse which emerged when (as a consequence of the lack of modern
data systems at the FBI) the World Trade towers collapsed, and
continues today when subprime tranches become unlinked in data bases
from actual debtors.

The hunt is on for people to blame, and they are fair game for trumped-
up charges based on trivia, and their God-given powers of expression,
by people who deny their God-given hermeneutic power and like apes
pretend that words are things.

I shall continue to post extensions this "annotated annotated
annotated" document because at this point, I am sick to my stomach at
the treatment of Schildt and I want to throw up. It's par for the
course in a field in which students are forced to learn their elder's
mistakes as if those mistakes were Holy Writ, a pedagogy, which Herb
tries to avoid, which creates nasty little clerks such as many of the
people who here vandalize contributions.

Edward G. Nilges

Walter Banks

unread,
Jan 16, 2008, 1:01:00 PM1/16/08
to

spinoza1111 wrote:

> > The Schidt's works that I have looked at have a lot of
> > misleading information in them, including statements that
> > are simply not true.
>
> You've just participated in the campaign, perhaps as a dupe...perhaps
> unwillingly. I believe that Heathfield et al. started a whispering
> campaign about Schildt's "errors" which deliberately reinterpreted
> them out of context, acting as if an out-of-date, non-deterministic,
> and non-standardizable language with multiple incompatible compilers
> IN REALITY was a fixed standard, which the teacher should to adhere to
> at the cost of comprehension.

One paragraph three subjects ...


> Here, and in an independent thread, I shall start a review of "The
> Annotated Annotated C Standard" at http://www.lysator.liu.se/c/schildt.html,
> the source of many of the attacks on Schildt.

Thanks for the link, it will added to the book errata.

The C.D.W.Feather's review was copyrighted in 1994 with additions
in 1995. My copy of Schildt is copyright 2000 still has many of the
errors.

I prefer reference books with trusted information.

w..

spinoza1111

unread,
Jan 17, 2008, 12:23:20 AM1/17/08
to
On Jan 17, 2:01 am, Walter Banks <wal...@bytecraft.com> wrote:
> spinoza1111 wrote:
> > > The Schidt's works that I have looked at have a lot of
> > > misleading information in them, including statements that
> > > are simply not true.
>
> > You've just participated in the campaign, perhaps as a dupe...perhaps
> > unwillingly. I believe that Heathfield et al. started a whispering
> > campaign about Schildt's "errors" which deliberately reinterpreted
> > them out of context, acting as if an out-of-date, non-deterministic,
> > and non-standardizable language with multiple incompatible compilers
> > IN REALITY was a fixed standard, which the teacher should to adhere to
> > at the cost of comprehension.
>
> One paragraph three subjects ...

My goodness. Yeah, one paragraph, three subjects. What part of the
phrase "complex sentence" don't you understand, and what don't you
understand about grammar's ability to present a main idea supported by
subordinate ideas?

The "topic" was that you had probably done Heathfield's dirty work
since it appeared in 2000 to be his purpose to start a campaign about
Schildt. This was supported by reasons, including the actual nature of
the errors found, which I am showing in the postings titled "annotated
annotated annotated", are for the most part not even errors, but
literary criticism by amateurs. It is also supported by the fact that
C standardization, the basis of the Schildt attack, is impossible and
as such a fraud.


>
> > Here, and in an independent thread, I shall start a review of "The

> > Annotated Annotated C Standard" athttp://www.lysator.liu.se/c/schildt.html,


> > the source of many of the attacks on Schildt.
>
> Thanks for the link, it will added to the book errata.
>
> The C.D.W.Feather's review was copyrighted in 1994 with additions
> in 1995. My copy of  Schildt is copyright 2000 still has many of the
> errors.

Clarification, then. The Schildt campaign started with his 1994
publication of the annotated standard, of which I had a copy. It was
used by Heathfield to discredit Schildt's 1999 book in order to build
sales for C Unleashed.

Richard Heathfield

unread,
Jan 17, 2008, 12:41:22 AM1/17/08
to
spinoza1111 said:

As I pointed out eight or nine days ago, Usenet criticisms of Schildt's C
books date back to *at least* 1991.

You have said that, if you do not read all posts, you do not have the right
to reply. (I'm not saying I agree with you, but I presume that you believe
this yourself.) Since it is evident that you do not read all posts
(because you keep on getting your facts wrong even after the facts have
been posted here), why are you still replying? By your own argument, you
don't have a right to do that.

> It was
> used by Heathfield to discredit Schildt's 1999 book in order to build
> sales for C Unleashed.

That is not true. I do not expect you to understand this.

spinoza1111

unread,
Jan 17, 2008, 2:34:22 AM1/17/08
to
On Jan 16, 10:01 pm, "Stephen Howe" <sjhoweATdialDOTpipexDOTcom>
wrote:

> > I got a non-anonymous wikipedia editor to remove the libel from the
> > Schildt article, which apparently had been created in order to post
> > criticism of Schildt
>
> But that is your own pet theory. And the evidence does not support the
> facts.

Unfortunately, it does. Take a look at my line by line review of the
"Annotated Annotated C Standard". The "errors" are for the most part
trumped-up minor geeky quibbles (how many times do you call main()?)
and amateur literary criticism by people who cannot write.

> Schildt has been writing sub-standard C and C++ books since at least 1995,
> long before 2000. YOUR A FANTASIST NILGES

Unfortunately for your case, they've been selling and are in use, and
C Unleashed by Heathfield is not.

The offensive against Herb was launched on behalf of a dishonest
attempt to "make" C "safe" by "standardising" it. It was mounted by
people who apparently flunked, or elected not to take, Compiler Design
101 and therefore make absurd claims that IN REALITY constructs are
undefined when in fact for each specific compiler they have a
definition, which the C programmer has to know or learn, while using
Herb's guidelines, which are criticised because they are overly
conservative in many regards.

So far, the only actual error I have found is Herb's claim that
variables have function and not block scope (where a "block" is
correctly defined as that which happens between balanced curly braces,
not, as the annotated annotated author seems to believe, a chunk of
code of any shape whatsoever). Actual C compilers may implement the
"wrong" way but it is safe to assume that variables have function
scope, while unsafe to assume that the compiler follows the standard
in this regard, and it is bad practice from the standpoint of
readability to override the name in a container block, in most cases.

I'm not a fantasist. Nor am I a nasty little coder with an ethical
maturity of 14 years old who turns technical issues into raging
against MEN who are trying to do a MAN'S job in a world being taken
over by street THUGS, who could give a shit about their trade, and
whose programme is to reduce everyone to their rotten little level.

spinoza1111

unread,
Jan 18, 2008, 12:52:04 AM1/18/08
to
On Jan 16, 10:39 pm, "Stephen Howe" <sjhoweATdialDOTpipexDOTcom>
wrote:

> >>> Basically, give it a rest - we're sick to death of your continued
> >>> prattle
> >>> in our (jointly shared) newsgroup. You won't "win", Richard won't "win",
> >>> and the rest of us clearly don't care about the topic.
> >Richard Heathfield instigated the thread vandalism. This is what he
> >does.
>
> No he didnt. That is just your prattle.
>
> >He attempted to vandalize the reputation of Herb Schildt to
> >enhance sales for his book...
>
> No he didnt. That is your pet theory. And it does not stand up.
> Schildt has been criticised seriously since at least 1995.

Perhaps he has. And this is because he knows his trade and his critics
don't.

> (i) Clive Feather reviewed one of Schildt's book because of the sheer
> quanity of errors. That was 1995 - 13 year ago.
> (ii) ACCU have been reviewing Schildt's books since ACCU started (at least
> 20 years) and miost reviews are damning.
> ALL THIS HAS POINTED OUT TO YOU, YOU CAN GO AND SEE THE EVIDENCE YOURSELF.
> BUT DO YOU LEARN? NO !!!!
> STILL CLINGING TO YOUR FANTASIES ON SHILDT AND HEATHFIELDNILGES?
> Harbison & Steele's book on C will be steady seller but I dont see evidence
> of Richard complaining on that.
>
> >, he consistently vandalizes that of people who do not agree with his
> >uneducated ideas...
>
> What "uneducated ideas"Nilges?
> Your uneducated.

I love it when Fascist thugs try to type with their hairy and
bloodstained paws.

> You seem ignorant of ISO standards on ASCII, C and C++, still clinging to
> your pet ideas on them, none of which stand up.
> Richard does not cling to his own pet theories.

Bullshit.

>
> >You're too cowardly to complain to Richard who as the instigator, the
> >aggressor and the bully is the one responsible for the lengths of
> >these exchanges IF I have, as I believe I have, an elementary right of
> >self-defense against a personal attack.
>
> They are not personal.

Yes, they are. I believe they may also be anti-Semitic.

>
> > You're too cowardly...
>
> Right, so you now accuse Chris of cowardice.

Fuckin flyin' A-head.

>
> >  because
> > you know that Richard conducts these attacks, and enables others to
> > take them to disgusting extremes, whereas you think I might have fewer
> > allies and would thus make an easier target.
>
> He does not know anything of the sort. That is just your fantasy.
>
> > Programmers who have sold their soul to an out of date artifact look
> > within themselves and find no willingness to change owing to the meal-
> > ticket factor of the lower middle class, but I'd not, if I were you,
> > class everyone you meet into that category.
>
> No. The Programmers have move on.

Where? English for Boneheads 101 down at the community college?

> But Programmers respect accuracy and historical records and dont attempt to
> rewrite history as you do.

What part of the apostrophe don't you understand? Or is the key broken
on your Commodore?

> We use Unicode, UTF-8, UTF-16 these days, but when we refer to ancient
> ASCII, we know it is 7-bits, because that is history, that was how it was in
> the beginning.

News flash. I already had one year of practical experience at what you
think was "the beginning" because in 1972, while, I'll presume, your
hippie parents were blazing up, you were at best a gleam in your
Daddy's eye.


>
> >You're sick to death? If you had any decency, if you had any courage,
> >you'd be sick to death of Heathfield's behavior.
>
> Heathfield is not the one who posted provocative off-topic starter articles
>
> "Kernighan scum project status announced from spinoza1111"
> "Advice to adult victims of cyberbullying"
> "maybe I'm not worthy, maybe I am scum"
> "Why I've returned"
> "Brian Kernighan, maybe I'm not worthy, maybe I am scum"
>

...showing a gentleman's and a scholar's self-esteem since unlike you
I am willing to concede the possibility, humorously, of being wrong.
And if you make an issue, off-topic, of my presence here, then you
have to pay the consequences: I become the "star".

> YOU DID !!!!
>
> Why dont you retire to oblivion Nigles?

Why don't you fart in a bottle and paint it?

Clive D. W. Feather

unread,
Jan 18, 2008, 6:26:52 AM1/18/08
to
In article
<2cd52499-b297-4568...@i29g2000prf.googlegroups.com>,
spinoza1111 <spino...@yahoo.com> writes

>C standardization is futile because it won't change a line of bad C
>code, nor prevent bad C code (like my C code, written after a long
>vacation from C and filled with boners idiomatic to C by virtue of
>that fact) from being written

"the determined Real Programmer can write FORTRAN programs in any
language."

[Yes, I've been a RP in my time.]

>C standardization is malicious-pernicious because it is intended to
>give the impresssion to MIS managers that just because a standard
>exists, their C coders can write new code which will be magically
>"safe".

The same logic applies to C++, C#, Fortran, Ada, Cobol, ....

[Incidentally, since you seem to love C#, a good chunk of the C#
standard was written by me. Not that I've every written a line of C#.]

--
Clive D.W. Feather | Home: <cl...@davros.org>
Tel: +44 20 8495 6138 (work) | Web: <http://www.davros.org>
Fax: +44 870 051 9937 | Work: <cl...@demon.net>
Please reply to the Reply-To address, which is: <cl...@davros.org>

spinoza1111

unread,
Jan 18, 2008, 7:27:13 AM1/18/08
to
On Jan 18, 7:26 pm, "Clive D. W. Feather" <cl...@on-the-
train.demon.co.uk> wrote:
> In article
> <2cd52499-b297-4568-a325-42b7a2bae...@i29g2000prf.googlegroups.com>,
> spinoza1111 <spinoza1...@yahoo.com> writes

>
> >C standardization is futile because it won't change a line of bad C
> >code, nor prevent bad C code (like my C code, written after a long
> >vacation from C and filled with boners idiomatic to C by virtue of
> >that fact) from being written
>
> "the determined Real Programmer can write FORTRAN programs in any
> language."
>
> [Yes, I've been a RP in my time.]
>
> >C standardization is malicious-pernicious because it is intended to
> >give the impresssion to MIS managers that just because a standard
> >exists, their C coders can write new code which will be magically
> >"safe".
>
> The same logic applies to C++, C#, Fortran, Ada, Cobol, ....

No, it does not. This is because dynamic and static block structure
all the way down represented an intellectual advance which Fortran
ignored, and, twenty years later, Kernighan and Ritchie messed up
after stealing it from Algol, with the result that in the large, C
programs are so flat structured that any perturbation anywhere (such
as a redefinition) can damage the entire structure.

This cynicism only means that block structure was never given a
chance, and it's my belief it was never given this chance owing to the
greed of computer companies, whose incompetent programmers resisted an
"efficiency" which labeled only their unwillingness to think. I speak
as a programmer who using machine language made a compiler work using
8K of storage. I speak as a former programmer, today a teacher, who
saw programming disappear into fashion and trashing to such an extent
that I was struck, in a different thread, by the sheer literacy and
competence of Richard Harter's 1990 memory allocator, which displays a
literacy and competence unseen today.

This literacy and this competence in actual praxis has disappeared
because the very idea that a standards committee can label things
"undefined" as a way of avoiding the hard issues of what a normal
compiler would do (apparently) and serve, not actual practitioners,
but their corporate masters, means that a dead Scholasticism today
infects and destroys the very possibility of actual praxis.

Capillary enforcement of the desire of an elite to retain power is
exercised by corporate and internet Brownshirts who target praxis, not
based in the main on alternative praxis, but based on conventional
wisdom and the little understood text of a standard, treated here by a
religious fundamentalist as another form of Holy Writ.

>
> [Incidentally, since you seem to love C#, a good chunk of the C#

I do not love any programming language. An artifact is not a fit
subject for love. C Sharp preserves some of the mistakes of C, such as
the failure to distinguish between a while loop, that would re-
evaluate the end condition, and a for loop, which should not.

> standard was written by me. Not that I've every written a line of C#.]

Isn't that the problem right there, Clive? And wouldn't that be why
Schildt so viscerally bothered you?

I would understand it if you were some sort of technical writer. But
if you developed a language without coding it, then you got lucky, and
were not behaving ethically and professionally. I realize that by the
1990s, mere programmers were being treated on the job like dogshit,
but if you developed a language for their use without eating your own
dog food, well, counsel rests: counsel is sick to learned counsel's
stomach and desires to throw up.

The problem as I see it is that standards can be written, today, by
people who've not written code in the language, nor seem to have ever
written a compiler, as if there could be a rational distinction, a
completely metaphorical head-hand split meant to show mastership and
servitude, between actually coding, and being a "standards committee
member"...able in fact to ruin at a minimum the work lives of real
programmers by making things "undefined", apparently at will.

It appears even more clear, then, that Schildt's real crime was that
he taught real people how to program as opposed to getting promoted
into management and onto standards committees, there to ruin
reputations in a profoundly zero-sum game, two consequences of which
in this decade were the intelligence failures of 911 (see the final
chapter of my book) and the subprime mortgage crisis, a failure in
part of mere data processing.

Walter Banks

unread,
Jan 18, 2008, 7:56:50 AM1/18/08
to

spinoza1111 wrote:

> > >He attempted to vandalize the reputation of Herb Schildt to
> > >enhance sales for his book...
> >
> > No he didnt. That is your pet theory. And it does not stand up.
> > Schildt has been criticised seriously since at least 1995.
>
> Perhaps he has. And this is because he knows his trade and his critics
> don't.

It is more likely that Schildt's critics know their trade and
Schildt doesn't. Most of the criticism is very well founded.
Misleading reference books do a lot of damage to the
industry.

w..

Stephen Howe

unread,
Jan 18, 2008, 10:32:50 AM1/18/08
to
>> The problem as I see it is that standards can be written, today, by
>> people who've not written code in the language...

As you see? How much facts do you have at your disposal to make such a
conclusion?
I knew some of the people that formed part of original 1990 ISO C standard
committee.
And some of those people represented compiler vendors (and were the actual
programmers).
Representatives from Microsoft, Borland, Watcom were there (as well as
others from non-PC backgrounds)
So it is more Nilge nonsense to talk about "people who've not written code
in the language".
Borland got to the point where they were updating their compilers a few
hours after a meeting ended with descisions made :-)
Some were hardware vendors: IBM, Sun, DEC,...

>> , nor seem to have ever
>> written a compiler

<guffaw> Your ignorance is showing every other line. Your making an utter
total fool of yourself.
I will have to go and count all the compiler vendors in the original 1990
ISO C standard committee.
It is certainly not 0 as you seem to think.
See previous paragraphs...

>> It appears even more clear, then, that Schildt's real crime was that
>> he taught real people how to program as opposed to getting promoted

>> into management and onto standards committees...

No. Schildt has been peddling C & C++ books with errors as long as I can
remember.
What is the point of teaching "real people" if what you say is an error?

For the past 10 years, a phase has entered the lexicon of programmers and
that is "Best Practice"
"Best Practice" is the collected distilled wisdom for using a particular
language or technology such that your programs are likely to have few
errors, they are robust.
Examples of that is

Steve Summit's maintainance of the FAQ for comp.lang.c
See http://c-faq.com/

Marshall Cline's maintainance of the FAQ for comp.lang.c++
See http://www.parashift.com/c++-faq-lite/

Both make sure any code snippets are compliant with the latest ISO C & C++
standards.
And generally if programmers adhere to "Best Practice", their code will be
robust.
Deviating usually means you (or your clients) will get burnt.
And if I move to some new langauge, some new technology, the first thing I
try to find out is what is considered "Best Practice" for that area and
adopt it.
It is the fastest way to get up to speed in some new area.

Meyers, Sutter, Dewhurst, Alexandrescu, Cline all write "Best Practice"
books for C++. All consider ISO C++ compliance as a prequisite.
Schildt, AFAIK, has never made an effort to make sure his offerings conform
to "Best Practice".
So that mean novice real programmer has been getting a bad deal from Schildt
for some time.

And I would gladly buy a Schildt book if it was any good, and he showed that
he cared about fixing errors.
And if I release a book and it is savaged, then I will take the medicine on
the chin and make sure any 2nd offering is better.
But I would hope to get it right first time.

Stephen Howe


Clive D. W. Feather

unread,
Jan 18, 2008, 10:55:31 AM1/18/08
to
In article
<3a9cc9e5-c671-4f3d...@h11g2000prf.googlegroups.com>,
spinoza1111 <spino...@yahoo.com> writes

>> >C standardization is malicious-pernicious because it is intended to
>> >give the impresssion to MIS managers that just because a standard
>> >exists, their C coders can write new code which will be magically
>> >"safe".
>>
>> The same logic applies to C++, C#, Fortran, Ada, Cobol, ....
>
>No, it does not.

Yes, it does. You can write bad code in any language.

> This is because dynamic and static block structure
>all the way down represented an intellectual advance which Fortran
>ignored, and, twenty years later, Kernighan and Ritchie messed up
>after stealing it from Algol, with the result that in the large, C
>programs are so flat structured that any perturbation anywhere (such
>as a redefinition) can damage the entire structure.

So you believe that nested structure is the silver bullet? I pity you.

I've seen bad programs written in Algol 68, surely *the* deep-structured
language of them all.

>This literacy and this competence in actual praxis has disappeared
>because the very idea that a standards committee can label things
>"undefined" as a way of avoiding the hard issues of what a normal
>compiler would do (apparently)

You seem to misunderstand the concept. For some reason, I'm not
surprised, particularly since your hero ducked the chance to explain.

>> [Incidentally, since you seem to love C#, a good chunk of the C#
>I do not love any programming language.

That's not the impression you give elsewhere.

>the failure to distinguish between a while loop, that would re-
>evaluate the end condition, and a for loop, which should not.

Now *you're* the one showing a religious dogmatism. There are arguments
both ways, but at the end both are syntactic sugar for very similar
underlying concepts.

>> standard was written by me. Not that I've every written a line of C#.]
>Isn't that the problem right there, Clive?

What problem? If anything, I'm flattered that the authors of new
languages recognise my contributions so well. I'm not claiming IP
rights, since I waived them years ago. I was simply amused.

>And wouldn't that be why
>Schildt so viscerally bothered you?

He didn't viscerally bother me. I found an intellectual dislike in his
lack of rigour in an area where rigour is required, and a concern that
others might be mislead by him. If you like, I attempted to do my public
duty.

>I would understand it if you were some sort of technical writer.

Do you know what I am? In terms of professional history, that is?

>But
>if you developed a language without coding it,

There's an interesting jump of logic. Or, rather, a non sequitor. As it
happens, I have developed several languages and coded in them (I can
think of four off the top of my head; there are probably more). One of
them made me a lot of money.

>I realize that by the
>1990s, mere programmers were being treated on the job like dogshit,
>but if you developed a language for their use without eating your own
>dog food, well, counsel rests:

Since this rests on a false premise, I don't need to consider it
further.

>counsel is sick to learned counsel's
>stomach and desires to throw up.

Are you using that emetic or not? If not, I suggest you try it. If so, I
suggest you see a doctor about your inability.

>The problem as I see it is that standards can be written, today, by
>people who've not written code in the language, nor seem to have ever
>written a compiler,

However, that doesn't seem to be the case for the C Standard.

>as if there could be a rational distinction, a
>completely metaphorical head-hand split meant to show mastership and
>servitude, between actually coding, and being a "standards committee
>member"...able in fact to ruin at a minimum the work lives of real
>programmers by making things "undefined", apparently at will.

Curiously, all the real programmers (as opposed to Real Programmers) I
know had no problem avoiding most constructs that are undefined (pace
NMM1).

>It appears even more clear, then, that Schildt's real crime was that
>he taught real people how to program

badly

>as opposed to getting promoted
>into management and onto standards committees,

"promoted". ROFL. My involvement was voluntary and it cost me money.
More noblesse oblige, I'm afraid.

>there to ruin
>reputations in a profoundly zero-sum game, two consequences of which
>in this decade were the intelligence failures of 911 (see the final
>chapter of my book) and the subprime mortgage crisis, a failure in
>part of mere data processing.

If you're blaming those on the work of ISO/IEC-JTC1-SC22-WG14, you realy
*are* mad.

Clive D. W. Feather

unread,
Jan 18, 2008, 11:27:08 AM1/18/08
to
In article
<cbd6ad8a-d9e8-48fc...@l32g2000hse.googlegroups.com>,
spinoza1111 <spino...@yahoo.com> writes

>> But that is your own pet theory. And the evidence does not support the
>> facts.
>Unfortunately, it does. Take a look at my line by line review of the
>"Annotated Annotated C Standard".

Except it isn't "line by line", since you omit the explanatory
introduction and many of the real errors.

>The "errors" are for the most part
>trumped-up minor geeky quibbles (how many times do you call main()?)

I don't recall mentioning how many times to call main() even once.

>> Schildt has been writing sub-standard C and C++ books since at least 1995,
>> long before 2000. YOUR A FANTASIST NILGES
>Unfortunately for your case, they've been selling and are in use, and

Unfortunately the quality of a book doesn't always correlate with its
popularity.

>C Unleashed by Heathfield is not.

I haven't read it, so I have no idea whether its lack of sales is earned
or not.

>The offensive against Herb was launched on behalf of a dishonest
>attempt to "make" C "safe" by "standardising" it. It was mounted by
>people who apparently flunked, or elected not to take, Compiler Design
>101 and therefore make absurd claims that IN REALITY constructs are
>undefined when in fact for each specific compiler they have a
>definition, which the C programmer has to know or learn, while using
>Herb's guidelines, which are criticised because they are overly
>conservative in many regards.

Since "Herb's guidelines" recommend a particular interpretation for
i = i++, we know they're useless. And you still don't understand what
"undefined" means.

>So far, the only actual error I have found is Herb's claim that
>variables have function and not block scope

I can't find where I mentioned that one. Did I miss it?

What about his error that bytes are 8 bits? Or that main() is declared
void? Or .... And you admitted an actual one in another posting.

Those are all mistakes, Otto.

>(where a "block" is
>correctly defined as that which happens between balanced curly braces,
>not, as the annotated annotated author seems to believe, a chunk of
>code of any shape whatsoever).

Excuse me: it's your hero who wrote "A compound statement is a block of
code". Not me (except by quotation). I know what a block is in C90, and
if I dredged through my memory I'd remember what it is in C99 (not the
same).

>Actual C compilers may implement the
>"wrong" way

No, actual C compilers implement it the right way.

>but it is safe to assume that variables have function
>scope, while unsafe to assume that the compiler follows the standard
>in this regard,

Wrong, twice.

>and it is bad practice from the standpoint of
>readability to override the name in a container block, in most cases.

"in most cases" - I'd agree with that.

>I'm not a fantasist. Nor am I a nasty little coder with an ethical
>maturity of 14 years old who turns technical issues into raging
>against MEN who are trying to do a MAN'S job in a world being taken
>over by street THUGS, who could give a shit about their trade, and
>whose programme is to reduce everyone to their rotten little level.

Strange, because that's exactly how you're acting.

CBFalconer

unread,
Jan 18, 2008, 11:19:57 PM1/18/08
to
"Clive D. W. Feather" wrote:
> spinoza1111 <spino...@yahoo.com> writes
>
... snip ...

>
>> I'm not a fantasist. Nor am I a nasty little coder with an ethical
>> maturity of 14 years old who turns technical issues into raging
>> against MEN who are trying to do a MAN'S job in a world being taken
>> over by street THUGS, who could give a shit about their trade, and
>> whose programme is to reduce everyone to their rotten little level.
>
> Strange, because that's exactly how you're acting.

It appears that Feather, Howe, and Heathfield have pretty well
taken over the herculean task of picking out errors in the
Nilges/Spinoza posts. They tend to quote the whole quivering mess,
so even if you want to read the original there is no reason not to
PLONK spinoza1111.

BTW, herculean only refers to the quantity, not to the detection
problem. That latter can be performed by almost anyone whose IQ
approaches 40.

--
[mail]: Chuck F (cbfalconer at maineline dot net)
[page]: <http://cbfalconer.home.att.net>
Try the download section.

--
Posted via a free Usenet account from http://www.teranews.com

spinoza1111

unread,
Jan 19, 2008, 10:03:25 AM1/19/08
to
On Jan 19, 12:27 am, "Clive D. W. Feather" <cl...@on-the-
train.demon.co.uk> wrote:
> In article
> <cbd6ad8a-d9e8-48fc-b586-ab8facce8...@l32g2000hse.googlegroups.com>,
> spinoza1111 <spinoza1...@yahoo.com> writes

It means that you didn't do your job.

>
> >So far, the only actual error I have found is Herb's claim that
> >variables have function and not block scope
>
> I can't find where I mentioned that one. Did I miss it?

Typical...you missed the most important real error. What part about
the forest? What part about the trees?

>
> What about his error that bytes are 8 bits? Or that main() is declared
> void? Or .... And you admitted an actual one in another posting.

Bytes are 8 bits for working programmers. He makes their life easier.
You prefer to destroy careers and worklives because to you, money and
artifacts are more important than human praxis.

In your dreams, pal. I am responding to computing thugs and coding
bums the only way they understand. I am responding to claims using
weasel words and negations unbacked-up by alternatives useful to
anyone, which have created a data smog of fear and intimidation.

"Maturity" may consist, in programming, of accepting the false
authority of lower middle class people whose lack of general culture
tracks their lack of computing culture, and who substitute "sequence
points" and other gibberish for operator precedence.

Who can't even think outside of a specific language and who enable and
make absurd claims for the "power" of an infantile disorder.

Who standardize languages without programming in them. I'll assume
until you clear things up (which may be never) that Microsoft fixed
your attempt to standardize C Sharp (not C#).

The gloves are off, pal. In an era of pervasive Fascism, in an era of
contempt for perceived weakness, of contempt for dialogue, of too much
respect for brute force, you can take it as read that survivors of the
Enlightenment will get rowdy.

Richard Heathfield

unread,
Jan 19, 2008, 5:17:52 PM1/19/08
to
spinoza1111 said:

<snip>


>>
>> Since "Herb's guidelines" recommend a particular interpretation for
>> i = i++, we know they're useless. And you still don't understand what
>> "undefined" means.
>
> It means that you didn't do your job.

No, it means that C doesn't try to dictate every possible outcome of every
possible construct. To do so would have made C much less useful. For
example, if C ruled that any pointer not pointing to an object (or
function) was required to have the value NULL, then the implementor could
probably find a way to do this, at the expense of slowing the machine down
to a crawl (and, by no means insignificantly, making DMA techniques
impossible).

>> What about his error that bytes are 8 bits? Or that main() is declared
>> void? Or .... And you admitted an actual one in another posting.
>
> Bytes are 8 bits for working programmers.

So what about people who write DSP code? Are you trying to claim that they
are not programmers? Or that they are not working?

spinoza1111

unread,
Jan 20, 2008, 2:04:06 AM1/20/08
to
On Jan 20, 6:17 am, Richard Heathfield <r...@see.sig.invalid> wrote:
> spinoza1111 said:
>
> <snip>
>
>
>
> >> Since "Herb's guidelines" recommend a particular interpretation for
> >> i = i++, we know they're useless. And you still don't understand what
> >> "undefined" means.
>
> > It means that you didn't do your job.
>
> No, it means that C doesn't try to dictate every possible outcome of every
> possible construct. To do so would have made C much less useful. For
> example, if C ruled that any pointer not pointing to an object (or
> function) was required to have the value NULL, then the implementor could
> probably find a way to do this, at the expense of slowing the machine down

Oh, we mustn't slow the machine down to a crawl...let's get those
wrong answers out the door boys.

Marx, at the beginning of Das Kapital, is a good capitalist. He
realizes that once the capitalist of 1840s Britain sinks his savings,
his wife's dowry, and above her all her father's into a steam jenny,
that steam jenny becomes the new Moloch.

It has be run flat out even if bairns and infants fall into the
shuttles and are hammered to death, poor little perishers.

Marx would be thunder-struck by the computer, because Moore's law
means that while the 1840s capitalist couldn't add a second to the day
(although the Frenchies, silly sods, tried adding three days to the
week in 1789), exploitation of CPU speed at any cost, including
correctness, becomes the new Moloch.

This is why I've actually seen phrases such as "today is more
important than correct" in management hymnals.

Like it or not, runtime controls are the only sensible regime.

Psychologically, they represent to the coding bum a superego: but cf.
Zizek: part of the psychology of global capitalism is the theft of the
superego.

We are promised an ersatz freedom when a trivial excitement (at
watching computer code make the lights blink) is spoken of as a
"freedom" that must never be taken from us by interpreters.

You hound and harass people here for trivial and even illuminating
errors while sponsoring, in some way that is, fortunately, probably
ineffectual, a paradigm which creates far more errors.

As it happens, people have long known how to combine code threading
and Moore's Law to get efficiency without sacrificing correctness. I
first encountered this practice at Bell-Northern Research, which as a
Canadian firm was located just enough outside American nonsense
worship to eat Western Electric's lunch with a digital switch.

However, what Marx saw as the basic irrationality and unsustainability
of capitalist investment remains. It made no sense for the mill owner
to have to force bairns to work the spinning Jenny if the bolts of
cloth were blood-soaked. But, in "competition", everyone's forced to
subscribe to the same irrationality. In 1840s Britain, it was running
the spinning Jenny 24/7. Today, its processing them digital signals
and dropping half of them on the floor, perhaps, using a program which
can't be changed because it's a mess.

> to a crawl (and, by no means insignificantly, making DMA techniques
> impossible).

Boo fucking hoo. Direct memory techniques impossible. I'll alert the
media.

>
> >> What about his error that bytes are 8 bits? Or that main() is declared
> >> void? Or .... And you admitted an actual one in another posting.
>
> > Bytes are 8 bits for working programmers.
>
> So what about people who write DSP code? Are you trying to claim that they
> are not programmers? Or that they are not working?

As far as I can tell, there's just as much stupidity in that type of
code and it seems to me, as a lay observer, that its biggest problem
is that in a natural field for applying OO, retardo-geeks insist on
their rights not to learn anything new, and hold companies to ransom
by insisting on using dope C. The game is ending as the work migrates
East.

Richard Heathfield

unread,
Jan 20, 2008, 2:27:07 AM1/20/08
to
spinoza1111 said:

> On Jan 20, 6:17 am, Richard Heathfield <r...@see.sig.invalid> wrote:
>> spinoza1111 said:
>>
>> <snip>
>>
>>
>>
>> >> Since "Herb's guidelines" recommend a particular interpretation for
>> >> i = i++, we know they're useless. And you still don't understand what
>> >> "undefined" means.
>>
>> > It means that you didn't do your job.
>>
>> No, it means that C doesn't try to dictate every possible outcome of
>> every possible construct. To do so would have made C much less useful.
>> For example, if C ruled that any pointer not pointing to an object (or
>> function) was required to have the value NULL, then the implementor
>> could probably find a way to do this, at the expense of slowing the
>> machine down
>
> Oh, we mustn't slow the machine down to a crawl...let's get those
> wrong answers out the door boys.

Well, if I want wrong answers, I know who to ask. But I have a better idea.
Let's get the *right* answers out the door, in a decent timeframe.
Sandboxes have their place, but no value is added to a correct program by
constant nanny-state bounds-checking. If the code is right, the extra
checks won't help, and they will very likely get in the way. And if the
code is wrong, the proper course is to fix it.

> This is why I've actually seen phrases such as "today is more
> important than correct" in management hymnals.

Correctness is important. If we don't have to get the right answer, we can
have the program run in zero time and take zero memory. But speed can be
important too. If a program's task is to produce an important daily report
that is used for making important and timely decisions, but takes 25 hours
to run, what's the point in having the program at all?

> Like it or not, runtime controls are the only sensible regime.

During debugging, yes. Production code should not need such props.

>> >> What about his error that bytes are 8 bits? Or that main() is
>> >> declared void? Or .... And you admitted an actual one in another
>> >> posting.
>>
>> > Bytes are 8 bits for working programmers.
>>
>> So what about people who write DSP code? Are you trying to claim that
>> they are not programmers? Or that they are not working?
>
> As far as I can tell, there's just as much stupidity in that type of
> code and it seems to me, as a lay observer, that its biggest problem
> is that in a natural field for applying OO, retardo-geeks insist on
> their rights not to learn anything new, and hold companies to ransom
> by insisting on using dope C. The game is ending as the work migrates
> East.

You failed to answer the question. You do that a lot. Presumably you hope
nobody notices. But people do notice.

Clive D. W. Feather

unread,
Jan 20, 2008, 7:13:16 AM1/20/08
to
In article
<9f8c838f-f480-4409...@s19g2000prg.googlegroups.com>,
spinoza1111 <spino...@yahoo.com> writes

>> What about his error that bytes are 8 bits? Or that main() is declared
>> void? Or .... And you admitted an actual one in another posting.
>
>Bytes are 8 bits for working programmers.

For some working programmers, yes. For others, far from it.

>Who standardize languages without programming in them. I'll assume
>until you clear things up (which may be never) that Microsoft fixed
>your attempt to standardize C Sharp (not C#).

I never said I attempted to standardise C#. Or C Sharp. Try reading what
I actually wrote.

>The gloves are off, pal.

I'm quaking in my boots. Or would be, if I wasn't sipping a nice beer.

>you can take it as read that survivors of the
>Enlightenment will get rowdy.

And if I turn the volume up to 11, will I be able to hear them?

CBFalconer

unread,
Jan 20, 2008, 1:10:52 PM1/20/08
to
Richard Heathfield wrote:
> spinoza1111 said:
>> Richard Heathfield <r...@see.sig.invalid> wrote:
>>
... snip ...

>>
>>> So what about people who write DSP code? Are you trying to claim
>>> that they are not programmers? Or that they are not working?
>>
>> As far as I can tell, there's just as much stupidity in that type
>> of code and it seems to me, as a lay observer, that its biggest
>> problem is that in a natural field for applying OO, retardo-geeks
>> insist on their rights not to learn anything new, and hold
>> companies to ransom by insisting on using dope C. The game is
>> ending as the work migrates East.
>
> You failed to answer the question. You do that a lot. Presumably
> you hope nobody notices. But people do notice.

But you have to appreciate the ingenious manner in which he
included "stupidity", "retardo-geeks", "ransom", "dope C" neatly
ensconced in a set of less offensive verbiage. This is convincing
evidence of a superior intelligence and an excellent education.
Only those of little intelligence would ignore his articles.

Armie

unread,
Jan 20, 2008, 4:42:35 PM1/20/08
to

> >> [Incidentally, since you seem to love C#, a good chunk of the C#
> >I do not love any programming language.

to which Clive D. W. Feather wrote:

>
> That's not the impression you give elsewhere.

Isn't it a good thing to love a programming language though?
"In this respect the programmer does not differ from any other craftsman:
unless he loves his tools it is highly improbable that he will ever create
something of superior quality" said some professor a couple of years ago.


Regards,
Armie

Phlip

unread,
Jan 20, 2008, 2:43:54 PM1/20/08
to
Armie wrote:

> Isn't it a good thing to love a programming language though?
> "In this respect the programmer does not differ from any other craftsman:
> unless he loves his tools it is highly improbable that he will ever create
> something of superior quality" said some professor a couple of years ago.

Yet we must take care to distinguish Love from the Stockholm Syndrome...

--
Phlip
http://www.oreilly.com/catalog/9780596510657/
^ assert_xpath

Randy Howard

unread,
Jan 20, 2008, 4:12:37 PM1/20/08
to
On Sun, 20 Jan 2008 12:10:52 -0600, CBFalconer wrote
(in article <47938EAC...@yahoo.com>):

> Richard Heathfield wrote:
>> spinoza1111 said:
>>> Richard Heathfield <r...@see.sig.invalid> wrote:
>>>
> ... snip ...
>>>
>>>> So what about people who write DSP code? Are you trying to claim
>>>> that they are not programmers? Or that they are not working?
>>>
>>> As far as I can tell, there's just as much stupidity in that type
>>> of code and it seems to me, as a lay observer, that its biggest
>>> problem is that in a natural field for applying OO, retardo-geeks
>>> insist on their rights not to learn anything new, and hold
>>> companies to ransom by insisting on using dope C. The game is
>>> ending as the work migrates East.
>>
>> You failed to answer the question. You do that a lot. Presumably
>> you hope nobody notices. But people do notice.
>
> But you have to appreciate the ingenious manner in which he
> included "stupidity", "retardo-geeks", "ransom", "dope C" neatly
> ensconced in a set of less offensive verbiage. This is convincing
> evidence of a superior intelligence and an excellent education.
> Only those of little intelligence would ignore his articles.

Well, that would certainly explain why you have him in your killfile.
;-)


--
Randy Howard (2reply remove FOOBAR)
"The power of accurate observation is called cynicism by those
who have not got it." - George Bernard Shaw

dj3v...@csclub.uwaterloo.ca.invalid

unread,
Jan 21, 2008, 12:57:45 PM1/21/08
to
In article <aOydnTQiKY-...@bt.com>,
Richard Heathfield <r...@see.sig.invalid> wrote:

> But speed can be
>important too. If a program's task is to produce an important daily report
>that is used for making important and timely decisions, but takes 25 hours
>to run, what's the point in having the program at all?

If it can correctly generate tomorrow's report from yesterday's data,
surely it's important enough to dedicate two computers to the task,
leaving 23 computer-hours per day available for other things?


dave

--
Dave Vandervies dj3vande at eskimo dot com
Who on earth would want a 3D spreadsheet? On the rare occasions when 2D
won't suffice for me, 3D generally won't cut it either, and I end up
writing a program instead. --Richard Heathfield in comp.programming

Richard Heathfield

unread,
Jan 21, 2008, 2:00:35 PM1/21/08
to
dj3v...@csclub.uwaterloo.ca.invalid said:

> In article <aOydnTQiKY-...@bt.com>,
> Richard Heathfield <r...@see.sig.invalid> wrote:
>
>> But speed can be
>>important too. If a program's task is to produce an important daily
>>report that is used for making important and timely decisions, but takes
>>25 hours to run, what's the point in having the program at all?
>
> If it can correctly generate tomorrow's report from yesterday's data,
> surely it's important enough to dedicate two computers to the task,
> leaving 23 computer-hours per day available for other things?

Okay, a fair nit. What I mean is that, if the program is so slow that *even
given all available computational power that can reasonably be devoted to
the task*, it cannot produce the results in time for them to be useful, it
is too slow.

Not quite 20 years ago (ouch!), I faced this situation myself. I was
required to add a module to a system (that I had *not* designed!!) with an
interactive component and a batch (currently 10 hour overnight run for
five modules) component; the new module was to be written "in the same
style" as existing modules to keep maintenance simple. One of the
directors used this system daily to make decisions that, *if* he made the
right decisions based on good information, would keep the business very
profitable. This was mission-critical stuff.

Well, I wrote and added the new module. Because of an extra field in this
module's DB record, though, the overnight run for that module turned out
to take 17 times longer than the others: 34 hours! With a total of 44
hours per night and with *only* one computer available, obviously we had a
problem.

I managed to get permission to rewrite the whole darn thing. This took a
day and a half of staring into space - to the extent that my colleagues
thought I'd fallen asleep! Then came one of those AHA! moments, and about
three and a half days of non-stop typing.

I got the overnight run down to 10 minutes total (and incidentally got the
average loading time down from about 45 seconds to about 8 seconds for the
interactive module).

Incidentally, the language wasn't C on this occasion. It was a 4GL/Expert
System called "Guru". The original programmer had not trusted it, and much
of the time he'd been fighting the language rather than going with its
flow, which is why everything was taking so long. My AHA! moment was
mostly a massive redesign of the database, but partly a rewrite of the
code to /use/ the language rather than try to pull against it. This
strategy worked admirably.

Wade Ward

unread,
Jan 22, 2008, 5:50:36 AM1/22/08
to
On Jan 17, 10:52 pm, spinoza1111 <spinoza1...@yahoo.com> wrote:
> On Jan 16, 10:39 pm, "Stephen Howe" <sjhoweATdialDOTpipexDOTcom>
> wrote:
>

> > your pet ideas on them, none of which stand up.
> > Richard does not cling to his own pet theories.
>
> Bullshit.

I remember chatting with Heathfield about texts to buy. This goes
back to when sentient creatures chatted on yahoo. I ended up buying
his, which, despite things like having Jack Klein announce the
opposite scheme for data and parity bits than what was printed for
hamming codes, I consider money well-spent.

When I brought up Schildt, he wrote:
Bullschildt.
--

Al Balmer

unread,
Jan 22, 2008, 11:16:43 AM1/22/08
to
On Fri, 18 Jan 2008 23:19:57 -0500, CBFalconer <cbfal...@yahoo.com>
wrote:

>"Clive D. W. Feather" wrote:
>> spinoza1111 <spino...@yahoo.com> writes
>>
>... snip ...
>>
>>> I'm not a fantasist. Nor am I a nasty little coder with an ethical
>>> maturity of 14 years old who turns technical issues into raging
>>> against MEN who are trying to do a MAN'S job in a world being taken
>>> over by street THUGS, who could give a shit about their trade, and
>>> whose programme is to reduce everyone to their rotten little level.
>>
>> Strange, because that's exactly how you're acting.
>
>It appears that Feather, Howe, and Heathfield have pretty well
>taken over the herculean task of picking out errors in the
>Nilges/Spinoza posts.

The Herculean task that come to mind is the cleaning of the Aegean
stables.

--
Al Balmer
Sun City, AZ

0 new messages