Re: [POSIX & Win32API] Getting the 'routing' informations



Golden California Girls <gldncagrls@xxxxxxxxxxx> writes:
Keith Thompson wrote:
Golden California Girls <gldncagrls@xxxxxxxxxxx> writes:
Keith Thompson wrote:
[...]
So what's *your* opinion? Should POSIX-specific issues be discussed
here; if so, what is the purpose of comp.unix.programmer? Should
Windows-specific issues be discussed here; if so, what is the purpose
of comp.os.ms-windows.programmer.win32? Should general algorithm
questions be discussed here; if so, what is the purpose of
comp.programming?
Answered else thread. C. Note not ISO C.

C is defined by the ISO standard. Stick to the standard and exercise
a bit of care, and you can write code that will work properly under
any conforming implementation on any platform. That's an extremely
valuable thing, and it's well worth having a place to discuss it.

ISO defines a version of C. C is not defined by ISO, although ISO
might disagree. I think that is the crux of the issue. Silence can
greet a question on a feature of some obscure C version, then again
there may be no right place to ask if it is that obscure.

Yes, I think it is the crux of the issue.

Yes, the ISO C standard defines the C language. There are dialects of
C that don't conform to the standard, but I think the authors of those
dialects (such as GNU C) wouldn't dispute the idea that the C language
is defined by the ISO standard. (It's in an odd state right now,
because the latest standard has not yet been widely implemented.)

For example, the only reasonable short answer to the question "Does C
have nested functions" is "No". A longer answer is "No, but some
implementations, such as gcc, support them as an extension."

Also I wonder about conforming implementations. I've been told
about one widely available implementation that given a couple of
compile time switches is supposed to make it conforming, but others
tell me that doesn't make it conforming and even offered an example.

It would be helpful if you could be more specific. Which
implementation? Which switches?

Most C compilers conform quite well to the C90 standard, at least if
you give them the right options. The exceptions to this are either
very old, or incomplete (intentionally or not), or attempt to
implement C99 without providing a C90-compatible mode (I think lcc-win
is an example of the latter).

Few compilers fully conform to the C99 standard, but a few actually
do.

Since all software above some size has bugs, it's likely that no
implementation is actually 100% conforming, but it's close enough that
you really can write software using only the ISO C standard as a
reference, with a reasonable expectation that you can compile it and
it will behave as specified by the standard.

But even that is irreverent as long as two reasonable people can
read the ISO C standard and come to different answers as there is no
way to agree what conforming would be in such a case.

There is certainly disagreement about some of the wording of the ISO C
standard, but I don't know of any cases that materially affect
practical compiler conformance. If you know of an example, please
share it.

That being
the case a ISO C standard conforming implementation is a pipe dream
at this point.

No, it really isn't.

Also not jumping on the
neck of people who may not be aware of the many flavors of C. A
little O/S stuff is always going to leak in. If they post an O/S
call in their example throwing a temper tantrum over it isn't adult.
If the post is just about O/S stuff the answer ought to be something
along the lines of "the calling arguments are the correct types, if
they make sense is something you should ask in a forum for your O/S"

I actually agree with that. It's to be expected that people will post
off-topic questions here that would receive better answers elsewhere.
There's no need to be rude while suggesting that posters should try a
different newsgroup.

But, for the most part, people here *aren't* rude about it. "Your
question is off-topic here; try asking in comp.unix.programmer" is not
rude; it's often the best help that can be given. And it's usually
not the original poster who is, or pretends to be, offended by a
redirection.

Maybe my rude antenna is more sensitive, I think there is a better
way of phrasing that off-topic part, perhaps so it isn't a
declarative. Perhaps something like a double negative form so it
conveys the idea but isn't like a drill sargent's barking. But that
may be just how I (and perhaps the others who complain) read words
without body language.

I'm not quite sure what you're getting at with the "double negative
form". Can you provide an example? If a straightforward declarative
statement like "comp.unix.programmer would be a better place for this
question" is considered offensive, I'm not sure how to soften the
blow, and frankly I don't think I want to.

[...]

--
Keith Thompson (The_Other_Keith) kst-u@xxxxxxx <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"
.



Relevant Pages

  • Re: Storgae durations
    ... you can justify calling something 100% ISO C just because it is a conforming C program. ... Lincoln's Gettysburg Address is a conforming C program. ... The C standard defines only two named conformance levels for code: "conforming" is a uselessly broad category which was invented for purely political reasons to get the standard approved - it's not possible to come up with anything that isn't in that category. ... But this is not strictly conforming C code. ...
    (comp.lang.c)
  • Re: PROBLEM
    ... Why does it matter that old programs must conform to a new C standard? ... to codify "existing practice" to the extent it could, ... it in any way, just getting past the compile errors), how eager ... ISO or FIFA or whatever. ...
    (comp.std.c)
  • Re: Which PIC18 C Compiler?
    ... the PIC not portable C is you want to get any sort of efficiency ... which bits of ISO C can't the PIC do? ... Try just section 5.2.4.1 of the C99 standard. ... It just means that it can't run *all* conforming C ...
    (comp.arch.embedded)
  • Re: Anyone object to the following change in libc?
    ... I don't know if we can say the ISO C standard has precedence here; ... This is actually recognized in conformance testing, ... > TL>requires you to compile with a c89 compiler, ...
    (freebsd-current)
  • Re: Current worlds smallest chess program
    ... effort to conform to the C standard and they are so successfull that this that you *can* take code written for one target and compile it on a completely different target and find that it still works correctly. ... Sometimes they even deprecate standard library functions by default and suggest the use of an alternative. ... The situation in practise is that most C code is not strictly conforming. ...
    (comp.lang.c)