Re: C binding for IEEE 754-2008
On Jul 18, 2012, at 3:49 AM, Dan Zuras IEEE wrote:
From: Jim Thomas <jaswthomas@xxxxxxxxxxxxx>
Subject: C binding for IEEE 754-2008
Date: Mon, 16 Jul 2012 16:56:04 -0700
Cc: CFP <cfp-interest@xxxxxxxxxxx>, John Benito <benito@xxxxxxxxxxxxx>
A C floating point study group, under ISO/IEC JTC1/SC22/WG14, the =
international standardization working group for the programming language =
C, has been working on a C language binding for IEEE Std 754-2008. WG14 =
is currently seeking approval to adopt this specification as a work =
item. A draft of Part 1 of the specification is posted at =
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1615.pdf for early =
informal review. Your review and input would be much appreciated. Please =
send comments to the study group reflector at cfp-interest@xxxxxxxxxxx.
(From just a few cursory readings.)
I see almost no mention of either the newly defined
tower of precisions or the elements of Clause 9 other
than their mention WRT rounding modes. Although it
mentions that these will appear in parts 3 through 5.
While I recognise that both the tower & transcendental
functions are optional, not specifying them for C means
that C (likely) never intendeds to support them.
If this is so it should be stated up front. Or, if it
is intended that they be supported in some later
revision of C, that should be stated.
While it is mentioned (up front) that 754 went to a
lot of trouble to support intelligent reproducibility,
there seems to be less support of it within C. Same
comments as above. (Or are these in part 5?)
I notice that support of those things that will lead
to the support of intervals is also not mentioned
even though we went to some trouble to put them in
754. As there is a committee currently working on
the interval standard (1788), I consider this as
largely justified on that basis alone.
The rest seems just fine to me on a cursory look.
Thanks for the comments.
As the introduction says, the study group plans to provide the 754 binding for
C in a Technical Specification in five Parts. What's posted for informal review
is just the first Part. The tower of precision will be included in Part 3
(Interchange and extended types), the Clause 9 elements in Part 4 (Supplemental
functions). Reproducible results would fit in Part 5 (Supplemental attributes).
Note that all of this is first intended to become an ISO/IEC Technical
Specification. Each Part, assuming it makes it through the approval process,
will have well-defined conformance, which a C implementation may support. A
future revision of the C standard may include some or all of the TS.