Sam Ruby wrote:
>> - We should not print the trailing zeroes. IEEE P754 does not
>> require it, and it breaks things such as array lookup. There is
>> precedence for this in ECMAScript: -0 and +0 both print as "0". If
>> someone really wants to distinguish among equal numbers, he can do it
>> with a function call to one of the mandated functions.
>
> Please explain the breakage?
It's already explained in the other emails here.
> When dealing with currency, having 0.05 + 0.05 produce 0.10 is a feature.
Contrary to some beliefs, the different cohort members in IEEE P754 are *not* a
valid indicator of precision. To prove this, assume that the different cohort
members are an indicator of precision. Then evaluate:
3.00 + 1.00000
IEEE P754 returns 4.00000, while the result is actually precise to only two
digits after the decimal point. Hence a contradiction. QED.
It gets worse. If you insist on distinguishing cohort members while printing
then you'll really confuse users who print the result of:
1m/.1m
Hint: The result is equal to 10 but could not print as "10". Scroll down to
see the actual value that distinguishing cohort members would require to be
printed.
Answer: Were we to distinguish cohort members, that value of 10 would be
required to print as "1e1". This is unacceptable and, as mentioned before,
breaks array indexing.
Waldemar
_______________________________________________
Es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss