const, volatile, etc [was Re: #defines with parameters]

Guy Harris guy at auspex.UUCP
Tue Dec 20 17:32:30 AEST 1988


>This is a good point. My answer to it is that Ritchie was too hopeful and
>that when he foresaw the rise of optimizers he could not anticipate that
>aggressive optimizers would turn out to be as a rule large, mostly slow,
>quite often very buggy, and how effective "register" could be in achieving
>efficient code at far lower expense.

Please note that there are those who would - with good reason - claim
that there exist agressive optimizers that *are* cost-effective (cf.
MIPS).  Please note also that aggressive optimizers do more than just
choose whether to put variables into registers.  Please note, therefore,
that your sweeping claim may fail to convince (as is the case with a lot
of sweeping claims posted to USENET; why do those who present sweeping
claims merely repeat them more loudly when they are disputed?  Do they
think that their mere *insistence* of the validity of those claims will
convince people to dispute facts that oppose those claims?).

>A different, but still equally plausible,

...but neither more nor less plausible...

>and maybe better,

...and maybe worse...

>reading of K&R than yours.

In other words, it is at best a debate between two people reading the
same stuff different ways, although one side (the minority one,
apparently) is reading a lot more into the statements in K&R than the
other.

Frankly, unless and until DMR himself states that your interpretation is
correct, I'm going to assume that the less aggressive, if you will,
interpetation (i.e., the one that reads less into it) is correct.

>And, maybe, some extra contextual information on how and why C
>was designed

Oh, so you were there when it was designed, or perhaps personally
involved in its design?

>and evolved in its early (pre BSD, pre SysV) history.

*Sigh* as has been stated before, the Ritchie compiler (pre-3BSD,
pre-System V) performed what you might well consider "aggressive"
optimizations, as Doug Gwyn states.



More information about the Comp.lang.c mailing list