I think the key is the realization that it is quite possible to have
interesting discussions about C informed byspinoza1111'scode, even though
his code is usually garbage and he appears to have an almost supernatural
talent for getting things wrong.
Not as good as yours, I'm afraid.
Look, puke. You had to be told fix your %s bug and then you blithely
posted a one liner with 100% bugs per line, and your friend (?)
Thompson gravely tech-reviewed it and missed the bug, which I had to
find for you. You were unable to think outside of string.h as I
challenged you and instead posted code so poorly formatted (with zero
sensitivity to indentation) and with such aliterate variable names
that I decided it wasn't worth my time to find the many bugs that were
probably there.
You've published foolish and incorrect statements ("the 'heap' is a
dos term" and "there are thousands of errors in Schildt I mean
twenty") in a vicious attack you had no qualifications to make, for
you have bragged more than once that you majored in psychology and
have taken zero computer science classes...and your code's inability
to not use string.h code, your string.h thinking, and your beliefs
that in a useful programming language order of evaluation can be
nondeterministic all makes that crystal clear: that you are not a
qualified programmer.
Whereas my code for replace() had a grand total of six bugs, and they
were not found by you: instead, I deliberately posted an early version
in order to get feedback, and fixed each bug without making the sort
of excuses you make, crediting the reporter. You didn't have the
decency to credit me, nor even the decency to read emails requesting
you to work out your issues with me like a man.
But he's wrong in such interesting ways, and discussions of the errors have
actually been pretty rewarding, I think. I mean, yes, his string replace
code is a monument to overthinking, and the perils of failure to build useful
components, and the perils of poorly-chosen variable names.
You are a child, Peter Seebach. Zip your fly.
I mean...what is "overthinking?" I actually know. It is a major
corporate crime in little "shops" in which the programmers are
technical eunuchs, where a giant software system has been written in
the Old Days by the Old Ones, and any real rethink by the eunuchs is
not on: instead, their job description is "find bugs and report them
to the studlies in Bangalore who'll work for one tenth what you make".
In fact, programmers who "think" in such workplaces ARE a liability,
since their thinking might convince them, because *gedanken sind
frei*, that capitalism is a bribe paid for access to the tools of
production...or some heavy shit like that.
And what are the perils, Pauline, of failure to build useful
components? What "useful components" do you build, turd blossom? You
proudly posted a "tool" to fail to replace %s in a string, and I can
only infer from your posting this code that you meant to establish
chops, and that this joke represented the zenith of what it is you do.
Did you mean "reuse"? The challenge was NOT to reuse, and you've
FAILED. If you'd taken the computer science classes that are a
requirement and not an option for credibility, you'd know that that is
how it is taught. In a compiler development class, you have to write a
compiler, not "use" one.
And what are the perils of poorly chosen variable names? At this
point, you HAVE NOT DEMONSTRATED that they are confusing, or cause
cancer, and you are thinking in comic-book shibboleth terms. At most,
all you can demonstrate is that aliterate youngsters who are
nonetheless too old to be playing video games and should crack a book
might have a laugh...and people laughed at you and you fear a return
to Adorno's "nightmare of childhood", a scene you reproduce with
others as the victim in a doomed attempt to avoid the secret contour
of your weakness.
Alice: Doctor! You fool! How dare you code intIndex1! It is a poorly
chosen variable name!
Nilges: Zip it, woman! Zey laughed at me at zee Royal Academy, but I
shall show zose fools and RULE ZEE VERLD!
Timmy: Mommy, I'm scared!
Ruff: Woof! Woof!
But it sure has produced more topical discussion of C than a whole lot of
other, apparently-more-reasonable, threads have.
Yeah, but I wonder why that is so? Could it be it takes courage AS
WELL as far more coding intelligence to be the seed? Every thread I
enter gets interesting and informative real fast, but of course you're
fucked if you'll make any obvious inference. But it does amuse me to
play Socrates.
The same thing's been true of a physics discussion I've been watching and
occasionally participating in. Trying to explain basic physics to someone
who appears to be genuinely convinced that there is a "real" frame of
reference to determine whether things are moving or not, or that changing
frames of reference necessarily costs energy, is *very* enlightening, in
a way that standing around agreeing about basic and obvious things is not..
Here you go again. You know, dear Peter, there is argument by analogy,
argument by false analogy, and a new form of even more fallacious
argument that you use here (I've taught logic at university level).
This is when people on the Internet respond by telling some story
about some COMPLETELY DIFFERENT person in hopes that their auditors
will confuse the real person being disrespected with some mostly
fictional other person.
Fundamentally: There are more ways to be wrong than ways to be right on most
technical issues. Learning by looking only at what is right is not likely
effective. Discussing why various wrong answers are wrong is much more
informative. If you want to learn about the importance of good variable
naming, IMHO, a page of good examples won't help you as much in understanding
the topic as trying to read the godawful mess of ptrIndex0++ ptrIndex3--
crap thatspinoza1111produced.
Abstract meaningless bullshit followed by libel. You know, I really
need to get around to complaining, on the advice of counsel, to Apress
and your employer about your behavior.
You're insane. What YOU DON'T LIKE (and what many other programmers do
not like) about my variable names is my preference for, and
willingness to write, variable names that are correctly spelled out
and systematically chosen (an index is...guess what).
The literary critic Edmund Wilson did some articles about life inside
Ford Motor in the 1930s, and he found that managers in that firm were
almost insane with fear of the Ford family, and careful at all times
never to speak or write (dictate to secretaries at that time) with
anything like correct grammar let alone style. The secretaries were
their grammar checkers.
The fact is that the only reason correctly spelled and internally
systematic identifiers are NOT encouraged was that attendant on the
election of Reagan, programming was "rationalized" by bringing
programmers to heel.
One way to do this is by means of "sumptuary" rules. "Sumptuary laws"
of the Middle Ages forbid the lower classes to wear silks and colors
favored by the wealthy. In programming, "business casual" replaced
IBM's "uniform" because the IBM employee, by shopping intelligently at
Jos. Banks or Brooks Brothers during their June sale, could look like
Watson Jr or Akers. Instead, "business casual" makes certain that the
"mere programmers" are visually recognizable by way of dun colors and
poorly fitting khakis.
Like Whit Diffie, who I knew at Bell-Northern Research, I wore a suit
to work, and since I was a runner as I still am, I'd arrive looking
like Tom Cruise. The executives didn't like this since I was "just" a
compiler developer.
But more important, sumptuary rules were imposed on writing. CEOs who
themselves were aliterate certainly didn't want, as emails were
introduced, to get emails that would tax their parser, and this is why
it became fashionable to be half-literate...and to hate fully spelled
variable names, and to replace them with basically private
abbreviations (where Willem's mathematician's code is at one and the
same time the limit case and quite refreshing because unlike the
intermediate cases it is consistent).