So, by that standard, if you're writing a C program to calculate batting
averages, asking questions in this newsgroup about the rules of baseball
is on-topic?
[Here come the strawmen again.]
Nope. Asking questions about baseball isn't on-topic. But questions about
structuring data (where the data happens to be batting scores) might be.
As the discussion progresses, pointing out that a proposed data structure
doesn't allow for some obscure baseball rule might also be on-topic.
That's fundamentally no different than writing a C program
making use of POSIX threads, and asking questions in this newsgroup
about the rules of POSIX threading.
If you were only asking about the semantics of the POSIX threading API,
then it wouldn't be on-topic.
But if you're writing multi-threaded code in C, that brings up a whole
load of issues about load/store semantics, "volatile", etc, and most of
the useful information is specific to a particular architecture, compiler,
or threading library.
Trying to isolate different parts of the discussion into
architecture-specific, compiler-specific, OS-specific etc portions would
be impractical. And for what benefit? To satisfy specific posters' notions
of topicality?
I'm well aware that a lot of programmers (particularly from the MS sphere)
don't make the distinction between the API and the language, but the
distinction isn't always that clear-cut. Threading is a good example of
where it isn't; garbage-collection is another.
Yes, but a newsgroup devoted to the particular type of embedded system
such code is targeted for would be much more likely to have people who
could usefully discuss it.
That's fine if you're only interested in one specific system. Often, the
platform on which code is being developed is just the one which is most
immediately at hand. Particularly for embedded systems, where you
often choose one specific hardware platform (possibly a custom platform)
to suit the application.
...
No, he would have different but similar issues in each of those cases;
the main thing they have in common with each other is that the C
standard allows for such issues to arise. That's not enough to justify
talking about them in a newsgroup not specific to the the particular
type of system he's actually interested in.
IOW, someone who is interested in multiple targets is supposed to ask on
several different groups (where slightly different versions of the same
information will be imparted on each, and "this is better for platform X
but worse for platform Y" isn't on-topic anywhere in the whole of usenet,
presumably).