chris@trantor.umd.edu (Chris Torek) (02/21/88)
In article <7290@brl-smoke.ARPA> gwyn@brl.arpa (Doug Gwyn) writes: >My views normally agree with Guy Harris, Chris Torek, Henry Spencer, and >other established C/UNIX "gurus". The main "controversy" is that Chris >and Donn Seeley seem fundamentally opposed to the idea of C standardization >by committee whereas I support what X3J11 is doing for the most part. I was all set to hotly deny this (to boldly split the infinitive), and jump up and down shouting `I AM NOT SHOUTING'; but it is true, quite so; and it stems from my personal definition of a committee: A committee is a group of people charged with the task of reaching a compromise, and a compromise is a solution to a problem that is equally distasteful to all. I do not want language changes that are equally distasteful to everyone; I want those which result in a complete, coherent whole that is nonetheless compatible with what I run now (so I need not do any work :-) ). X3J11 has actually done quite well, given the differences between existing implementations. There are a few botches, notably the unsigned `value preserving' rules, `noalias', and some of the preprocessor rules. The coexistence of old and new style declarations necessitates the format for the prototype declaration of a function with no arguments, which is an eyesore. There are a few other kludges, but an ANSI Standard is of necessity a compromise. I might wish for a standard from research!dmr, but he has the wrong initials. If only he had been named Isaac Stanley Oliver.... -- In-Real-Life: Chris Torek, Univ of MD Computer Science, +1 301 454 7163 (hiding out on trantor.umd.edu until mimsy is reassembled in its new home) Domain: chris@mimsy.umd.edu Path: not easily reachable
fox@alice.marlow.reuters.co.uk (Paul Fox) (03/04/88)
In article <2331@umd5.umd.edu> chris@trantor.umd.edu (Chris Torek) writes: >X3J11 has actually done quite well, given the differences between >existing implementations. There are a few botches, notably the >unsigned `value preserving' rules, `noalias', and some of the >preprocessor rules. The coexistence of old and new style declarations >necessitates the format for the prototype declaration of a function >with no arguments, which is an eyesore. There are a few other >kludges, but an ANSI Standard is of necessity a compromise. Well, what about the fact that: typedef int (*PFI)(); main() { PFI fp = main; } gives: fp == *fp == **fp == ***fp ? ------------------- // o All opinions are my own. (O) ( ) The powers that be ... / \_____( ) o \ | /\____\__/ _/_/ _/_/ UUCP: fox@alice.marlow.reuters.co.uk
karl@haddock.ISC.COM (Karl Heuer) (03/09/88)
In article <295@alice.marlow.reuters.co.uk> fox@alice.marlow.reuters.co.uk (Paul Fox) writes: >In article <2331@umd5.umd.edu> chris@trantor.umd.edu (Chris Torek) writes: >>X3J11 has actually done quite well ... There are a few botches [e.g. ...] > >Well, what about the fact that [after declaring a function pointer `fp`] > fp == *fp == **fp == ***fp ? The only new part is that `fp()` is now a valid way to invoke the indirect function. It's always been true that, in any context other than `(*fp)()`, `*fp` would degenerate to `fp`; all they did was remove the special case. (A cleaner approach would have been to deprecate the degeneration, and require an explicit ampersand: `fp = &main`. Too big a change, I suppose.) Karl W. Z. Heuer (ima!haddock!karl or karl@haddock.isc.com), The Walking Lint
chris@mimsy.UUCP (Chris Torek) (03/11/88)
In article <933@micomvax.UUCP> ray@micomvax.UUCP (Ray Dunn) writes: >To a certain extent I agree with the sentiments expressed above [a `thank you' to Doug Gwyn that I deleted] >by Richard even though (if anyone cares) I sometimes vent my frustration >at some of Doug's idiosyncratic responses. Venting frustration in netnews is something many will do (yes, I too), though it is usually counterproductive. Since it happens, readers of this group (and other groups) should watch for it and try not to let it affect them. >If you hold yourself up as an authority, as Doug does, you must be very >careful to maintain your credibility. Here I will argue philosophy (another counterproductive effort :-) ). I say one cannot `hold oneself up as an authority'. There are two kinds of Authority. One boils down to `power'; in the Usenet dementiarchy [*], at least, and to a fair extent in the ARPA-land info-c mailing list, this meaning does not apply. The other is, in essence, `knowledge'; the only true Authority in this sense is that which is demonstrated. Hence it is his readers who (sensibly) regard Doug Gwyn as an Authority on the latest doings of the ANSI X3J11 committee. Thus it is (at least in part) up to those readers to separate Gwyn-opinion from committee-fact. ---- [*] `Rule by madness'. (I made it up.) >What does it matter if *I* spout off, who am I, but Doug has positioned >himself such that his readers should be able to rely on the veracity of his >remarks. He should thus be careful what he says and how he says it. Perhaps so; but it *does* matter if you, or indeed anyone, `spouts off'. As you yourself put it: >... in my mind it denegrates the "quality" of [one's] >postings and [one's] credibility as an authority. >Earlier gurus of 4 or 5 years ago ... would >rarely resort to sarcasm and downright dismissal of others views! (I think your memory has mellowed the situation somewhat.) >[Mind you, Chris Torek seems to be getting a little crotchetty in his >old age these days! (:-)]. I am not! Why you young whippersnapper, I will have you know . . . . :-) (Besides, I am only 24, and even among full mortals that is rarely considered old, to say nothing of Halfelven.) Seriously, though, anyone can rant, and most of us do; while as authors we should try to minimise this, as readers we should also expect it, and do our best to ignore it. >If anyone wants to follow up this posting, please choose an appropriate news >group. I could not think of any better place (except perhaps /dev/null, but then that was why I put in the Summary header above.). -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7163) Domain: chris@mimsy.umd.edu Path: uunet!mimsy!chris
llave@phoenix.Princeton.EDU (Rafael Llave) (03/13/88)
# Well, what about the fact that: # # typedef int (*PFI)(); # # main() # { # PFI fp = main; # } # # gives: # fp == *fp == **fp == ***fp ? A) It does not. B) If it did , it would not be more serious than for( i=0;;) generating an endless loop.