Re: OT: Language War (Re: "C" Manual)
On Sat, 29 Dec 2001, Eric G. Miller wrote:
> For a good explanation of how C++ took all the problematic issues of C and
> added new sources of errors, see http://www.elj.com/cppcv3/.
Hah! More like this:
"For a vivid example of how much free time ivory tower academics have to
weep and moan about languages other than their favorite, see
I mean, really. I've read all three editions of this guy whining about
C++ (and C) and I don't think I can take it any longer. "Be like me, use
a language with imperceptible market penetration." I really think Mr.
Joyner is my polar opposite. When I think of a computer, I think of an
electronic device which will do such-and-such thing if you place value
0x37 at memory offset 0. When Ian Joyner looks at a computer, he wants to
represent his model of the universe inside it. The computer and the human
are fundametally different things. You'll expend an aweful lot of energy
trying to represent human concepts in a computer. By contrast, it is very
easy for a human to learn computer concepts.
If you ask an Eiffel programmer how to get the value of a byte at a given
offset in the computer's memory, they'll start with an explanation about
why the programmer shouldn't concern himself with computer memory; memory
is in the "how" domain. From there, they will launch a long lecture that
probably won't answer the question but will result in something absurd
like class ByteObserver (and its companion, class ByteObserverManager).
A C programmer will just say *offset.
Anyway, back to "A Critique of C++"...
Mr. Joyner's treatise shouldn't be considered anything other than a
finely-ground axe. Many of his specific criticisms start out "It is well
known..." or "It hash been shown..." without reference to the place where
it has been shown or the people to whom it is well known. In one place,
he complains that C++ is not suited to concurrent processing (without
reference to the tremendous amount of existing concurrent C++ software --
Mozilla is a modern example), but fails to mention that, at the time of
his writing, Eiffel lacked support for concurrency altogether!
Someday, if I suddenly become a bored academic, I'll write a complete
critique of Mr. Joyner's critique. At the current time, I am too busy
writing actual software.