Why do you post here at comp.lang.c? You show no respect for anybody here and no knowledge of the subject, C. That Heathfield and now Seebach treat you seriously is mystery to me but, of course, their business.
You do seem widely read. As if you were locked in a library for several years and had nothing to do but read the books. Not the technical ones it seems, but the Poli Sci ones. You've read more Marx than Knuth I'll bet. Who is John Galt?
I've been programming professionally since 1979 and until today. I can program rings around you and I'm still junior to many in this group. You are a fraud.
-- Joe Wright "If you rob Peter to pay Paul you can depend on the support of Paul."
Joe Wright <joewwri...@comcast.net> writes: > Why do you post here at comp.lang.c? You show no respect for anybody > here and no knowledge of the subject, C. That Heathfield and now > Seebach treat you seriously is mystery to me but, of course, their > business.
> You do seem widely read. As if you were locked in a library for > several years and had nothing to do but read the books. Not the > technical ones it seems, but the Poli Sci ones. You've read more Marx > than Knuth I'll bet. Who is John Galt?
> I've been programming professionally since 1979 and until today. I can > program rings around you and I'm still junior to many in this > group. You are a fraud.
Perhaps he thrives on the attention you've just given him.
-- Keith Thompson (The_Other_Keith) ks...@mib.org <http://www.ghoti.net/~kst> Nokia "We must do something. This is something. Therefore, we must do this." -- Antony Jay and Jonathan Lynn, "Yes Minister"
On 2009-11-08, Joe Wright <joewwri...@comcast.net> wrote:
> Why do you post here at comp.lang.c? You show no respect for anybody here and no > knowledge of the subject, C. That Heathfield and now Seebach treat you seriously > is mystery to me but, of course, their business.
I don't actually treat him seriously, just with a near-approximation of basic courtesy.
I find usenet kooks amusing. He's an excellent example of the type. I was originally interested in seeing his arguments or reasons for his claims about the standardization process, but at this point I'm obliged to grant that he's just plain crazy.
But still sorta funny. You gotta admire someone who, a week AFTER you tell him that you're thinking of using his posts as a drinking game, expresses shock and dismay to discover that you don't seem to be taking him seriously.
Not the funniest kook I've ever engaged with, but by far the champion of the pure non-sequitur. I've talked to people whose posts were pure word salad who were less able to astound and amaze with the sheer lack of relationship between their positions and their stated reasons.
On 2009-11-08, Keith Thompson <ks...@mib.org> wrote:
> Perhaps he thrives on the attention you've just given him.
This is probably largely the case. One of the underlying traits of a lot of persistent usenet trolls is some degree of Narcissistic Personality Disorder. One of the big tells is an obsession with the qualifications of people one knows or has some kind of relationship to. The obsession with Nash (who may be a wonderful guy, and very skilled in some field, but whom I do not know to be an authority of any sort on C) is fairly typical, as is the use of references to his own assertions as citations.
Seebs <usenet-nos...@seebs.net> writes: > On 2009-11-08, Keith Thompson <ks...@mib.org> wrote: >> Perhaps he thrives on the attention you've just given him.
> This is probably largely the case. One of the underlying traits of a > lot of persistent usenet trolls is some degree of Narcissistic > Personality Disorder.
And people who diagnose people based on news posts often suffer of clinical lycanthropy. Well, perhaps not. It is a common idea that plain ordinary stupidity, obsession, eccentricity, incoherence, extreme rudeness, stand in need of some clinical explanation but there's really not much to recommend it.
ObC: is there some reason why structs, unions and enums don't live in distinct namespaces?
On Nov 10, 8:16 am, Aatu Koskensilta <aatu.koskensi...@uta.fi> wrote:
> And people who diagnose people based on news posts often suffer of > clinical lycanthropy. Well, perhaps not.
Is there a Godwin-type law that states that any sufficiently long Usenet thread will result in one of the antagonists offering an amateur psychoanalytical diagnosis, based almost entirely on having seen psychiatrists on detective shows.
In <fe4cd00d-cb5b-476a-9085-8b986119d...@k19g2000yqc.googlegroups.com>,
gwowen wrote: > On Nov 10, 8:16 am, Aatu Koskensilta <aatu.koskensi...@uta.fi> > wrote:
>> And people who diagnose people based on news posts often suffer of >> clinical lycanthropy. Well, perhaps not.
> Is there a Godwin-type law that states that any sufficiently long > Usenet thread will result in one of the antagonists offering an > amateur psychoanalytical diagnosis, based almost entirely on having > seen psychiatrists on detective shows.
Yes. It's called Owen's Corollary.
-- Richard Heathfield <http://www.cpax.org.uk> Email: -http://www. +rjh@ "Usenet is a strange place" - dmr 29 July 1999 Sig line vacant - apply within
Aatu Koskensilta wrote: > [...] > ObC: is there some reason why structs, unions and enums don't live in > distinct namespaces?
Struct tags, union tags, and enum tags *do* have separate name spaces. Each struct or union also defines a name space for its own members, distinct from other name spaces. The members of an enum type (the int constants) are used without any contextual clue that could identify a name space, so they share the same name space as other "ordinary identifiers." That is, in the (incorrect) code
enum foo { APPLE, ORANGE, BANANA }; enum bar { DELL, GATEWAY, APPLE }; printf ("APPLE = %d\n", APPLE);
... there is nothing in the final line that could designate whether foo's or bar's APPLE was intended.
Eric Sosman wrote: > Struct tags, union tags, and enum tags *do* have separate > name spaces. Each struct or union also defines a name space > for its own members, distinct from other name spaces. The > members of an enum type (the int constants) are used without > any contextual clue that could identify a name space, so they > share the same name space as other "ordinary identifiers." > That is, in the (incorrect) code
Eric Sosman <esos...@ieee-dot-org.invalid> writes: > Aatu Koskensilta wrote: >> [...] >> ObC: is there some reason why structs, unions and enums don't live in >> distinct namespaces?
> Struct tags, union tags, and enum tags *do* have separate > name spaces.
Do they? I read 6.7.2.3 to mean that they don't and it seems that the gcc people have done so too. There are change bars in the draft PDF I use (n1256) so it looks like this matter has been clarified since C99.
> Each struct or union also defines a name space > for its own members, distinct from other name spaces. The > members of an enum type (the int constants) are used without > any contextual clue that could identify a name space, so they > share the same name space as other "ordinary identifiers."
True. It's not clear whether the question was about tags or content, it makes most sense if it was about tags. If Aatu had asked only about enums I'd have assumed that the contents were the issue.
Ben Bacarisse wrote: > Eric Sosman <esos...@ieee-dot-org.invalid> writes:
>> Aatu Koskensilta wrote: >>> [...] >>> ObC: is there some reason why structs, unions and enums don't live in >>> distinct namespaces? >> Struct tags, union tags, and enum tags *do* have separate >> name spaces.
> Do they? I read 6.7.2.3 to mean that they don't and it seems that > the gcc people have done so too. There are change bars in the draft > PDF I use (n1256) so it looks like this matter has been clarified > since C99.
The issue is more directly addressed in 6.2.3, which says that tags (for struct, union, and enum types) exist in their own name space, separate from the name spaces of labels, struct members, union members, and ordinary identifiers. That's why you can have
typedef struct foo { int i; float f; } foo;
However, the name space for tags includes *all* the tags, so you can't have
struct foo { int i; float f; }; union foo { double d; char c; }; enum foo { BAR, BAZ };
... which my earlier sloppy wording might have suggested. Sorry for any confusion.
On 2009-11-10, Aatu Koskensilta <aatu.koskensi...@uta.fi> wrote:
> ObC: is there some reason why structs, unions and enums don't live in > distinct namespaces?
What you mean like
/* look, no clashes */ enum foo; struct foo; union foo;
Well, the reason why structs and unions would be in the same space is somewhat understandable: they are a variation on the same kind of thing. A union is a variation on the structure type, where the members are all at offset zero. Still, the different keyword does disambiguate!
There is no good reason why ``enum foo'' cannot coexist with ``struct foo'', since the tag is clearly disambiguated by context, and enumerations and aggregates are very different things.
These restrictions did help the development of C++ though.
The reason why they are all conflated into one namespace is likely historic. Early C compilers did not even put the /members/ into a separate namespace! The member names had to be unique. That's why ``struct stat'' in Unix has member names like ``st_ino''.
So the present situation of members being scoped to their respective types is an improvement.
It's too late to put enums, structs and union tags into separate namespaces; this would only cause C++ incompatibility.
Ben Bacarisse wrote: > Eric Sosman <esos...@ieee-dot-org.invalid> writes: > <snip> >> However, the name space for tags includes *all* the tags, >> so you can't have
>> struct foo { int i; float f; }; >> union foo { double d; char c; }; >> enum foo { BAR, BAZ };
>> ... which my earlier sloppy wording might have suggested. Sorry >> for any confusion.
> Ah. I took it the way you didn't mean!
My fault. I started writing it one way, then re-worded it -- and only half-edited it ...
> It's too late to put enums, structs and union tags into separate namespaces; > this would only cause C++ incompatibility.
Since the C and C++ committees talk to each other I would ahve thought it would still be possible. The same change could be made to both C and C++, although C++ might want to create even more name spaces. After all, it's a change that could not break any existing code. Whether it is worth it is another matter, and personally I'm not bothered. -- Flash Gordon