[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Suggestion of annex D



Guillaume Melquiond a écrit :
Le mardi 29 mai 2007 à 00:08 +1000, Peter Henderson a écrit :


I think that, if the 754r proposes to change the behavior of pow, this
new function will never even be provided to users. There will not be any
choice available to them. Only the "inferior" version will keep being
provided.


I agree that C99 will probably prevail until the next revision of the C standard. After that... we all hope that IEEE-754R will be good enough to be incorporated into this next revision, don't we? C99 will be allowed to evolve, won't it ? It's not that totally and eternally perfect, is it?



Remark: my point only applies to changing the behavior of an already
standardized function. If the 754r was to define three new functions
(e.g. explog, nth_pow, and nth_root) and if there was no mention of the
pow function, then I am sure the new functions would make their way into
programming language standards.

So we're friends again. Our point was that the standard should first provide a normative manual for implementing any mathematical function that is fully and unambiguously defined over R u {-infty, +infty}, and then only define a (informative or normative?) set of such mathematical (and not floating-point) functions, which would be bound to expand with time.

With this approach, there will be an implementation of the C99-like pow that will only disagree over 1^NaN and NaN^0 values.
I have no problem with that.
First the change would be minor (some cornercases), so the implementation diff would be very small. Second, it would break only programs which make asumptions about the value of 1^NaN. I'm sure previous C standard evolution have broken programs which made dangerous but legal asumptions about the size of pointers or the like.


Only, we won't call it explog :)

        Florent

Best regards,

Guillaume

754 | revision | FAQ | references | list archive