How is NCEG going to resolve this conflict...
<9009120027.AA10058avalidgh.com>
Donn Terry
uunet!hpfcrn.fc.hp.com!donn
Wed Sep 12 07:45:39 PDT 1990
I normally just watch this group, however in this case I think I can
usefully add something.
1) I feel that it has now proven itself a requirement that X3J11 (and
probably most of the rest of X3J*) must be required to "coordinate"
with IEEE 754 so situations like this don't happen again. (The
purpose of coordination is so that standards don't end up in
head-to-head conflict like this.) I'm going to go further: unless
someone convinces me otherwise in a few days that it's a bad idea,
I'm going to forward this discussion to "the right people" so that
it is recognized as an issue to be addressed. (This could be read
as a "threat"; I really don't want it to be read that way, but I don't
see an easy way to rewrite it so it can't be misread that way, so I'll
just add this parenthetical remark. I believe that at least some of
the problems that NCEG is finding in C is lack of such coordination. I
don't have access to the Project Authorization (NWI, whatever X3 calls
it) that would tell me if coordination was required with 754, but it's
obvious that it didn't happen properly, and I believe that future work
should take that error into account.)
2) So-far, at least, POSIX doesn't say anything about the math functions.
However, I have written up a paper where I've proposed to tighten things
up a bit so at least the Standard C vs. SVID war can be resolved by a
formal standard. POSIX will have a vehicle that will be able to carry
such a statement. The "short" gist of it is that there are 3 types
of math defined: IEEE, "something like IEEE (NaNs and INFs present,
but not everything else", and "classical (no NaNs and INFs)". The
application can tell which of the 3 it has at compile time, and error/
exception actions from functions are defined for all 3. In addition,
I/O for INFs and NaNs is defined in the POSIX Locale. (It can't be
in the C locale because if you read C closely enough it requires that
"NaN" and "INF" (and friends) be treated as errors (because they aren't
"numbers" in the sense of signs, digits, and E's). The paper has
been met with some resistance, and mostly yawns, so I havn't pushed it.
NCEG has received copies, but no-one has responded.
If there is a useful statement that POSIX can make that would not
conflict with NCEG's work and which would address some of these immediate
problems, it can be considered for POSIX. The next "train" leaves
probably in the spring, and arrives a bit more than a year from now,
I think. This appears to be much sooner than NCEG could do anything.
I wouldn't want to go much beyond what I've discussed above, however,
as even what I discuss is at the very edge of scope for POSIX.
Donn Terry
(Who happens to be chair of IEEE P1003.1, but who is speaking for himself
in this letter.)
More information about the Numeric-interest
mailing list