Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!uwm.edu!cs.utexas.edu!rutgers!att!dptg!ulysses!andante!alice!dmr From: dmr@alice.UUCP Newsgroups: comp.std.c Subject: noalias (was: Re: the "const" qualifier) Message-ID: <10039@alice.UUCP> Date: 21 Oct 89 05:52:32 GMT Organization: AT&T Bell Laboratories, Murray Hill NJ Lines: 61 Bill Plauger first used the phrase "politically impossible" during X3J11's noalias showdown meeting, in May 1988. It's become evident that it is, at least in part, a code for "Dennis won't stand for it." The situation (especially then) was pretty complex. During Dec-Jan 1987-88, Prosser, with help from a central group of X3J11 members and suggestions from me, rewrote the "noalias" paragraphs several times, and the collective wisdom was never able to come up with a proposal that both made sense and was compatible with the design that X3J11 had voted in during the preceding fall. The problem at that point was that this was supposed to be the penultimate draft (only editorial changes), and everyone wanted things to happen as rapidly as possible. The two choices I saw were to try to work something out on my own and present an alternative proposal, or simply to try to rip the thing out altogether. You may think me naive or lacking in self-confidence, but I was genuinely worried that X3J11 would be so impelled to finish things up without another public review that I decided on the second course. The reasoning was that if I said, "I would like you to fiddle the draft in this way," I would be taken less seriously than if I said "Noalias must go. This is non-negotiable." I feared that the committee would decide to go with their previous decision unless I credibly pulled a full tantrum. I decided to handle things this way after talking to several of the insiders on X3J11 who were all somewhat pessimistic of the likelihood that the committee would change its mind (and commit itself to another review). It wasn't a decision taken lightly--I brooded about it throughout early 1988. In retrospect, it seems possible that if I had worked harder and perhaps done more lobbying, it would have been possible to have a "noalias" that was linguistically defensible and generally acceptable. On the whole, though, I don't regret taking the course I did. I have been careful to point out to groups like the Numerical C Extensions Group convened by Rex Jaeschke that I will not cause them "political problems" if someone can come up with a coherent noalias notion that does not cause unbearable problems in the rest of the language. Incidentally, my general dislike of type qualifiers, to which Gwyn referred, was noticeably stimulated by important faults in the definition of "const" in the same Dec. 1987 draft that introduced "noalias." As it turned out, the draft had leftover language in it that was simply unintended, and the committee dealt with these complaints by saying (in effect) "Whoops, we didn't mean to say that." BTW, I think X3J11 did an excellent job, though there are legitimate criticisms. If you want to see others in greater anguish and wrangling, check out Fortran 8X, or the Ada 9X or C++ discussions. Dennis Ritchie dmr@research.att.com att!research!dmr