Should we broaden the topicality of this group?

P

Philip Potter

Chris said:
The compiler is NOT faulty. If you insist on that sort of stupidity
there is not a non faulty C compiler on the planet.

Also a pure ISO C compiler is of little use to most people. They NEED
the extensions in order to do efficient programs on most targets.

Does the C standard require conforming compilers not to provide
extensions? I know you don't like people quoting from drafts, but n1256
- the latest draft of the C committee says in section 4.6:

"A conforming implementation may have extensions (including additional
library functions), provided they do not alter the behavior of any
strictly conforming program.[3]"

Where the footnote [3] says: "This implies that a conforming
implementation reserves no identifiers other than those explicitly
reserved in this International Standard."

I know the draft is not the standard, but I'm willing to bet that this
isn't new since C99. If you think that C99 /does/ prevent extensions,
please provide chapter and verse. (I don't have a copy of C99; nor do I
have any wish to purchase one.)
I wonder how people can get compilers for use on 61508 SIL3, 60601-1-4
and Do187B projects if these compilers are "faulty"

You seem completely at odds with the safety critical world and I know
which one I would bet my life on... let alone my money.

I don't think CBFalconer is at odds with the safety critical world by
simply saying "I find it quite possible to compile standard C code on a
non-compliant compiler."
This is my problem with the small group of net nannies on here. They are
out of touch with reality.

I am sympathetic with some (though not all) of your views with regards
to topicality and policing thereof, but if you insult people in this
group you will not get a decent debate out of them.
 
S

Shadowman

Malcolm said:
I'll vote for C.

Firstly what irritates some people is not so much the fact of off-topic
redirections as the tone. Supercilious references to "your particular
platform" when the particular platform is Windows don't always help. The
reality is that for many people Windows is computing, and no one likes
to be made to feel inferior because he doesn't have a nice Unix box to
play with.

Perhaps one could borrow a line from Seinfeld? "If you're using Windows
(not that there's anything wrong with that)..." <G>



General Reply to the thread:

Although I'm more more of a lurker than contributor, I thought I'd weigh
in. I'd consider myself in the 'C' camp. I have no problem with
politely pointing people to another group when appropriate. But also I
think someone who has an answer for a slightly-off-topic question should
be welcome to chime in without the thread having to delve into a
100-post argument on topicality.

The problem with all of the meta-discussion is that it seems all of the
regular contributors are set in their opinions on topicality, and post
the same argument every time. Some interesting, but not topical (in a
'P' sense) threads have been hijacked by that discussion. The whole
thing seems counter-productive, really. An attempt to lessen the noise
in the group has had the opposite effect.
 
R

Richard

Philip Potter said:
Does the C standard require conforming compilers not to provide
extensions? I know you don't like people quoting from drafts, but
n1256 - the latest draft of the C committee says in section 4.6:

This is the entire point. Confirming compilers DO provide extensions and
these extensions are used with standard compliant code. A good example
was the stat post yesterday. Nothing wrong with the C in that we didn't
NEED to know the definition of the stat stuct in order to correct the
mistakes. But as usual in comes a net nanny blustering about "stat is
off topic".
I am sympathetic with some (though not all) of your views with regards
to topicality and policing thereof, but if you insult people in this
group you will not get a decent debate out of them.

How in any way is he insulting anyone by asking for some thought and
common sense before pronouncing things off topic? He has a very valid
point too - some (not all) of the noisiest net nannies seem to have
little experience of real code and real situations - and it is from
these situations that people come from for help. To expect someone to
sanitise their real problems into completely standards compliant code
without any "non standard" headers in order to get some help on one line
which COULD be standards compliant is daft.

I shed a tear when I see "How should WE know. We only only deal in ISO
C" when someone posts something like

#include <mstruct.h>

int main(){

struct mystruct m:

printf("%d\n",(void *)&m);


}

It is easy to help the poster.
 
P

Philip Potter

Richard said:
This is the entire point. Confirming compilers DO provide extensions and
these extensions are used with standard compliant code. A good example
was the stat post yesterday. Nothing wrong with the C in that we didn't
NEED to know the definition of the stat stuct in order to correct the
mistakes. But as usual in comes a net nanny blustering about "stat is
off topic".

Well I didn't see the thread, but if what you say is correct (knowledge
of the stat struct was unnecessary to correct the mistakes) then
offtopic cries were more extreme than I would like. But here Chris Hills
is trying to say that a compiler which provides any extension at all is
not an ISO C compiler; which is false.
How in any way is he insulting anyone by asking for some thought and
common sense before pronouncing things off topic?

What a curious way of phrasing the question. I don't see anywhere in
Chris's post him asking for thought and common sense. I do see him
indirectly calling CBFalconer a "net nanny".
He has a very valid
point too - some (not all) of the noisiest net nannies seem to have
little experience of real code and real situations - and it is from
these situations that people come from for help.

I wouldn't agree, but we couldn't resolve this argument without naming
names, and I /really/ wish to avoid that.
To expect someone to
sanitise their real problems into completely standards compliant code
without any "non standard" headers in order to get some help on one line
which COULD be standards compliant is daft.

I agree.
I shed a tear when I see "How should WE know. We only only deal in ISO
C" when someone posts something like

#include <mstruct.h>

int main(){

struct mystruct m:

printf("%d\n",(void *)&m);


}

It is easy to help the poster.

I agree here too.
 
C

Chris Hills

Shadowman <[email protected]> said:
sense) threads have been hijacked by that discussion. The whole thing
seems counter-productive, really. An attempt to lessen the noise in
the group has had the opposite effect.

My point exactly. If they stopped the OT rants and just helped the OP
whilst pointing out that some things are not portable (not that there is
anything wrong with non portable code for the majority) this NG would
have a LOT less noise and be a happier place

It will not disappear off into a mess as the real domain experts are in
other NG's and after the initial discussion from which we will all learn
the discussion will move there naturally.
 
R

Richard

Philip Potter said:
Well I didn't see the thread, but if what you say is correct
(knowledge of the stat struct was unnecessary to correct the mistakes)
then offtopic cries were more extreme than I would like. But here
Chris Hills is trying to say that a compiler which provides any
extension at all is not an ISO C compiler; which is false.


What a curious way of phrasing the question. I don't see anywhere in
Chris's post him asking for thought and common sense. I do see him
indirectly calling CBFalconer a "net nanny".

Because CBFalconer is a net nanny. He enjoys nothing more that flaunting
the rules himself while lecturing others on how and what to post.
I wouldn't agree, but we couldn't resolve this argument without naming
names, and I /really/ wish to avoid that.


I agree.

That is the entire crux of the issue.
I agree here too.

Then you are on Chris Hill's side too for the most part.
 
C

Chris Hills

[/QUOTE]
cries were more extreme than I would like. But here Chris Hills is
trying to say that a compiler which provides any extension at all is
not an ISO C compiler; which is false.

CBF was saying that the compiler that compiles non standard code is
"faulty". Which means there are no C compilers however as you point out
the ISO standard does let you have extensions. And in self hosted
environments all sorts of other things CBF get hot under the collar
about.

What a curious way of phrasing the question. I don't see anywhere in
Chris's post him asking for thought and common sense.

I want to be able to discuss C as it is used. Which is Not pure ISO C.
If you want to discus just pure ISO C go to comp.std.c

in C.L.C if they stopped shouting OT every two minutes we wouldn't have
the arguments and we could disuse things like how to call another
program for C which should highlight there is not standard way of doing
it and get a useful exchange of views on how to do it in various
environment which benefits all.

It would also help if the net nannies looked at the C problem being
asked without ranting "not proper C" for every line of C that is posted
here when it is not specific to the actual point in discussion.

If some on has conio.h so what if it is not central to the question.
Even it if it is central it will help to point out it is not
portable....

Because people pick up source to use from all over the place some people
try using conio.h in a UNIX environment or spawn in windows and wonder
why it does not work. Education and assistance not "OFF TOPIC " or "i
dnot recognise it because it is not standard C" are pointless.
I do see him indirectly calling CBFalconer a "net nanny".

My mistake... it should not have been an indirect but a direct call :)
I agree.
I agree here too.
So we all agree then.

If they stop this sort of messing about and OFF TOPIC posts most of the
problems would go away.

I am not sure what they are trying to achieve with their pedantry . It
certainly seems counter productive with their stated aims.
 
P

Peter 'Shaggy' Haywood

Groovy hepcat Richard Heathfield was jivin' in comp.lang.c on Sat, 29
Sep 2007 11:16 pm. It's a cool scene! Dig it.
[Discussions of topicality are always topical. Nothing in this article
should be construed as suggesting otherwise - where I say something
like "only <foo> is topical here", this should be read as if it said
"only <foo> and topicality discussions are topical here"!]

One of the (several) bugbears that haunts this group is the issue of
topicality. There appear to be several topicality camps within clc at
the moment, which I'll attempt to categorise as neutrally as I can
manage. I'll assign a name and a letter to each group in an attempt to
make it easier for us all to discuss the various camps.

[Snip.]

Do the descriptions of these groups reflect what their members think
*is* topical, or what they think *should be* topical?
I believe the topic of this newsgroup is, and should remain, that to
which group P subscribes. However, some degree of flexibility is, and
should be, IMHO, allowed, as fits the philosophy of group C. Other
related subject matter is covered elsewhere, so it should remain off
topic here.
There's always been some flexibility here. This is a perfectly
friendly newsgroup when people (newbies) remain calm and recognise the
help they're getting for what it is. It's when they fly off the handle
or think everyone owes them something for nothing that we get problems
and topicality wars. Such clueless people should be educated in the
ways of Usenet in general and comp.lang.c in particular, and sent on
their way (to the source of further help). I've encountered places on
Usenet where many of the regulars were real jerks. And I've encountered
places where topicality has gone right out the window. Neither extreme
is ideal. We should keep a tight rein on topicality, while allowing
enough flexibility to be useful (and friendly).
That'll be two cents, thanks.
 
A

Al Balmer

As I don't wan't to try to put myself under one of your label. I think
that this group should be about the C programming language as used in
practice while comp.std.c is for the theory.

You are misinformed about what c.s.c. is for, as well. It's for
discussion of the standard itself. Discussion about theory of
programming or theory of languages doesn't really belong in either
group.

The C programming language as used in practice is certainly topical
here, but peculiarities of particular implementations and extensions
are not. Part of the reason is that most of these have more
appropriate groups, where better information is available. Why would
you want to deprive someone of the best venue for their question or
problem? Isn't it better to say "Sorry, this is a kosher shop and we
don't serve ham sandwiches. I suggest the German Deli next door."

<OT>(With memories of a German deli next door which made wonderful
sandwiches from what seemed like dozens of varieties of ham <g>.)</OT>
 
P

Philip Potter

Chris said:
CBF was saying that the compiler that compiles non standard code is
"faulty".

The only place in this subthread where CBF used the word "faulty" was
the following:

It seems to me that he is saying that non-compliant compilers are
faulty. I see nothing wrong with this point of view. The context
suggested that he may have (mistakenly) considered a compiler with
extensions to be nonconforming, but I'm sure that he agrees with the
standard that compilers may implement extensions if they like.
I want to be able to discuss C as it is used. Which is Not pure ISO C.
If you want to discus just pure ISO C go to comp.std.c

....where you will definitely be offtopic, because there is a difference
between discussing standard C and discussing the C standard. Pure ISO C
is and should be on topic here.
in C.L.C if they stopped shouting OT every two minutes we wouldn't have
the arguments and we could disuse things like how to call another
program for C which should highlight there is not standard way of doing
it and get a useful exchange of views on how to do it in various
environment which benefits all.

It would also help if the net nannies looked at the C problem being
asked without ranting "not proper C" for every line of C that is posted
here when it is not specific to the actual point in discussion.

It is useful to point out that conio.h and friends are not standard C
(though I'm not sure I would say they're not "proper"). But if this
prevents a poster from answering the original question, that is bad.
If some on has conio.h so what if it is not central to the question.
Even it if it is central it will help to point out it is not portable....

Because people pick up source to use from all over the place some people
try using conio.h in a UNIX environment or spawn in windows and wonder
why it does not work. Education and assistance not "OFF TOPIC " or "i
dnot recognise it because it is not standard C" are pointless.

I agree here.
My mistake... it should not have been an indirect but a direct call :)

Either way, it's just name-calling.
So we all agree then.

If they stop this sort of messing about and OFF TOPIC posts most of the
problems would go away.

I am not sure what they are trying to achieve with their pedantry . It
certainly seems counter productive with their stated aims.

Pedantry is good in moderation. Anyway, I'm rapidly coming to the
conclusion that this problem may not be as big as I imagine it. It's
difficult to analyse the amount of overzealous netcoppery from personal
experience, because of selective memory...
 
C

Charlton Wilbur

AB> The C programming language as used in practice is certainly
AB> topical here, but peculiarities of particular implementations
AB> and extensions are not. Part of the reason is that most of
AB> these have more appropriate groups, where better information
AB> is available. Why would you want to deprive someone of the
AB> best venue for their question or problem?

This is pretty close to my view of it as well.

If there's a forum devoted to the specific area involved - such as
POSIX and its penumbra, in comp.unix.programmer - then it should be
discussed there, and not in comp.lang.c.

And I concur with the opinion expressed elsethread - the majority of
the problem here does not come from people who redirect querents
elsewhere, but with the people the majority of whose posts in the
group serve only to attack the people doing the redirection.

Charlton
 
?

=?iso-2022-kr?q?Harald_van_D=0E=29=26=0Fk?=

There are no C compilers in the world. Non are fully C99 compliant and
have no extensions.

There are fully C99 conforming implementations, and implementations are
allowed to have extensions so long as they don't affect "correct"
programs.
 
K

Kenny McCormack

Chris Hills said:
If they stop this sort of messing about and OFF TOPIC posts most of the
problems would go away.

I am not sure what they are trying to achieve with their pedantry . It
certainly seems counter productive with their stated aims.

You might just as well ask why people post to Usenet at all. Obviously,
because it fills some sort of psychological need of theirs. It makes
them feel good about themselves. In short, it provides an "ego boo".

The Net Nannies here just seem to have a particularly virulent strain of
it. It says a lot about what they must be like in real life.
 
U

user923005

There are no C compilers in the world. Non are fully C99 compliant and
have no extensions.

There probably does not exist a c90 compiler either, since every large
software system has bugs in it.

On the other hand, talking about windows message handlers or fork() or
lib$spawn() have other places for them.

I would think that something is not topical if it has a better place.

I do think that some of the regulars are occasionally very curt with
beginners. It would be better to gently redirect them to the proper
forum than just to issue the "off topic" mandate without any
clarification. I guess that people who post here asking about how to
initialize a thread simply do not know how to find the right group, or
they would have done that in the first place. So I suggest that (to
the degree possible allowed by our character) we should all subscribe
to the "Tanmoy Bhattacharya school of manners". Which is to say
(simply put) that we should be as polite as possible. I think we can
all agree that both Tanmoy and Dan Pop had incredible knowledge of the
C language. But Tanmoy's manner of deflection was (in my opinion)
superior to Dan Pop's. I think that we tend to navigate to the Dan
Pop "Slam the door in the newbie's face" school of graciousness simply
because it tends to be easier.
 
J

Jean-Marc Bourguet

Al Balmer said:
You are misinformed about what c.s.c. is for, as well.

I didn't write about what csc or clc are for, I wrote about what I think
they should be for.
It's for discussion of the standard itself.

It doesn't seem there are a lot of discussion about the typesetting, the
choice of paper and so on in that group.
Discussion about theory of programming or theory of languages doesn't
really belong in either group.

I never meant that. And I wonder how you could think I meant that. Is
there something lacking in my english expression or did you play some
language trick like I tried just above?
The C programming language as used in practice is certainly topical
here, but peculiarities of particular implementations and extensions
are not.

They aren't used in your practice? In my practice, I've yet to see any
program of importance be done without relying on guarantees which aren't
made by the standard.
Part of the reason is that most of these have more appropriate groups,
where better information is available. Why would you want to deprive
someone of the best venue for their question or problem?

Where did you get that I want to deprive someone of the best venue for
their question or problem? I just wrote that I though there are questions
outside the standard C for which this group should be the best venue. I
don't want discussion about the meaning of XCrossingEvent or the details of
a given function of gmp. But I've no problem with a discussion about cross
platform GUI API for C or about the different arbitrary precision libraries
available.

Yours,
 
A

Alan Curry

Although I'm more more of a lurker than contributor, I thought I'd weigh
in. I'd consider myself in the 'C' camp. I have no problem with
politely pointing people to another group when appropriate. But also I
think someone who has an answer for a slightly-off-topic question should
be welcome to chime in without the thread having to delve into a
100-post argument on topicality.

The problem with all of the meta-discussion is that it seems all of the
regular contributors are set in their opinions on topicality, and post
the same argument every time. Some interesting, but not topical (in a
'P' sense) threads have been hijacked by that discussion. The whole
thing seems counter-productive, really. An attempt to lessen the noise
in the group has had the opposite effect.

I heartily endorse this event or product.

The problem isn't that some people are using the group "incorrectly". It's
that there are regulars who pump out dozens of posts every day arguing about
it. They're more interested in talking about each other than about C
programming, as proven by the existence of this thread. Inventing categories
to classify people by their idea of correct usage of the newsgroup... blech.
What if that much effort had gone into writing something interesting instead?

I shall now attempt to do the reverse: hijack a stupid wasteful meta-thread
with actual C content.

There is a header file foo.h, which defines a macro like this:

#define MAGIC_CHARACTER 'x'

The main program #includes foo.h and does some stuff that depends on which
character is selected to be magic. The intent is that the user can change the
x in the header file and recompile to get a different result.

I would like to create a log file whose name contains the magic character. If
MAGIC_CHARACTER had been defined as a string ("x" instead of 'x') I could do
this:

logfp=fopen(MAGIC_CHARACTER ".log", "w");

and the adjacent strings would be merged into one string to make the
filename. But since MAGIC_CHARACTER is not a string, that won't work. I have
to build the string at runtime using sprintf or something similar. Changing
it to a string would disrupt all the other uses of the macro, so that's
undesirable.

So here's the challenge: given a macro which expands to a character constant,
build a string literal which contains that character. I can't think of a way
to do it, and if it's not possible, it feels like a hole in the language. (If
we can do compile-time concatenation of 2 strings, why not a string and a
single character?)
 
K

Keith Thompson

Malcolm McLean said:
I'll vote for C.

Firstly what irritates some people is not so much the fact of
off-topic redirections as the tone. Supercilious references to "your
particular platform" when the particular platform is Windows don't
always help. The reality is that for many people Windows is computing,
and no one likes to be made to feel inferior because he doesn't have a
nice Unix box to play with.
[snip]

Discussions of how horribly bad Windows is (either inherently or in
comparison to Unix), and about Microsoft being the Great Satan, or at
least the source of all buffer overflows, is certainly off-topic.
This is not the place for OS flame wars.

But referring to Windows as "your particular platform" is perfectly
appropriate, since that's exactly what it is. Unless there's more
context than that, I see nothing supercilious about it.

It's probably true that "for many people Windows is computing". We do
those people no favors by letting them continue to hold that belief.
Even someone who is never going to program under any system other than
MS Windows should understand that it's just one operating system among
many.
 
K

Keith Thompson

Chris Hills said:
My point exactly. If they stopped the OT rants and just helped the OP
whilst pointing out that some things are not portable (not that there
is anything wrong with non portable code for the majority) this NG
would have a LOT less noise and be a happier place

It will not disappear off into a mess as the real domain experts are
in other NG's and after the initial discussion from which we will all
learn the discussion will move there naturally.

And how exactly do you know that? The past history of comp.lang.c++
suggests that it most likely *would* decline into a chaotic mess,
where actual discussion of the language as defined by the standard
(for which *there is no other newsgroup*) would either be lost in the
noise or would vanish almost entirely, as the experts get tired and
leave.

(There's one other newsgroup that discusses standard C, namely
comp.lang.c.moderated. But the latency there is far too long for
meaningful discussion. The interval between posting a question and
getting a response can be weeks, whereas here it's typically measured
in hours, or even minutes.)

On the other hand, if the trolls would stop trolling, and if certain
non-trolls would stop complaining about attempts to encourage
topicality, I believe that the signal-to-noise would improve
dramatically.
 
K

Keith Thompson

Chris Hills said:
There are no C compilers in the world. Non are fully C99 compliant and
have no extensions.

Extensions are, of course, specifically permitted by the standard.

I understand that there are a few C compilers that fully support C99,
modulo bugs. (I doubt that any compiler for any language is entirely
bug-free.)

We consider C95 and C90 to be topical here, and I don't remember
anyone *seriously* suggesting that we shouldn't. There are plenty of
compilers that conform reasonably well to C90 or C95, modulo bugs.
 
K

Keith Thompson

Chris Hills said:
The compiler is NOT faulty. If you insist on that sort of stupidity
there is not a non faulty C compiler on the planet.

Obviously the standard allows extensions. Either Chuck made a fairly
simple error, or you've misinterpreted what he wrote. Please don't
base an argument about topicality on one small mistake.

Standard C permits extensions, with certain restrictions. The
existence of such extensions is certainly topical. Questions about
whether a given extension is permitted by the standard are topical.
The details of how to use a given extension are not.
Also a pure ISO C compiler is of little use to most people. They NEED
the extensions in order to do efficient programs on most targets.

They also NEED an operating system, and a text editor or IDE or
whatever, and a chair to sit in while they program. That doesn't make
any of those things topical in comp.lang.c.
I wonder how people can get compilers for use on 61508 SIL3,
60601-1-4
and Do187B projects if these compilers are "faulty"

I have no idea. I don't happen to know what 61508 SIL3, 60601-1-4,
and Do187B are. I do know a lot about C, which is the topic of this
newsgroup.
You seem completely at odds with the safety critical world and I know
which one I would bet my life on... let alone my money.

This is my problem with the small group of net nannies on here. They
are out of touch with reality.

*Please* stop using the insulting term "net nannies". I'm very
interested in having this discussion with you, but I will cease doing
so if you continue with the insults.

This newsgroup does not attempt to discuss all of "reality". It
discusses the C programming language, which is defined by the ISO
standard(s). Suggesting that a system-specific issue should be
discussed elsewhere does *not* imply that that issue is unimportant or
unreal.

I wouldn't attempt to talk about 61508 SIL3, 60601-1-4, or Do187B here
(partly because I don't know anything about them), and I hope you
wouldn't either (even though you presumably do know about them).
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,780
Messages
2,569,611
Members
45,281
Latest member
Pedroaciny

Latest Threads

Top