<br><tt><font size=2><br>
&gt; &gt;&gt;&gt;&gt; &nbsp; &nbsp; &nbsp;Conversion from number to decimal
is precise and will round trip.<br>
&gt; &gt;&gt;&gt; Conversion of number to decimal is not precise.<br>
&gt; &gt;&gt; I chose my words carefully :-)<br>
&gt; &gt;&gt; </font></tt><a href=http://en.wikipedia.org/wiki/Accuracy_and_precision><tt><font size=2>http://en.wikipedia.org/wiki/Accuracy_and_precision</font></tt></a><tt><font size=2><br>
&gt; &gt;<br>
&gt; &gt; I agree that decimal has a precision greater than number, but
you said<br>
&gt; &gt; that &quot;Conversion from number to decimal is precise&quot;
without qualification.<br>
&gt; &gt; In the case of a deterministic conversion rather than a measurement,
I<br>
&gt; &gt; think it is quite unclear to use the term &quot;precise&quot;
in this context<br>
&gt; &gt; (as opposed to &quot;repeatable&quot; or &quot;reproducible&quot;),
and I don't think that<br>
&gt; &gt; the spec should express it in that way.<br>
&gt; <br>
&gt; This was just my summary. &nbsp;When people see Decimal(1.1) produces<br>
&gt; 1.100000000000000088817841970012523m, they are likely to react &quot;boy<br>
&gt; that's... um... precise&quot;.<br>
</font></tt>
<br><tt><font size=2>:-). &nbsp;'correctly rounded' would be a good way
to describe it.</font></tt>
<br><tt><font size=2>&nbsp;<br>
&gt; &gt;&gt;&gt; I'm also not sure whether the round-trip property covers
all NaNs<br>
&gt; &gt;&gt;&gt; (preserving payload), denormal, or unnormal values.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; NaN payloads should be preserved (decimal has quite a few
more bits).<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; The results, however, wouldn't preserve the &quot;normalness&quot;
(or lack<br>
&gt; &gt;&gt; there of) of the original input.<br>
&gt; &gt;<br>
&gt; &gt; Thanks for the clarification. Does IEEE 754r (or the ES3.1m interpretation/<br>
&gt; &gt; profile of it) specify that NaN payloads shall be preserved in
a way that<br>
&gt; &gt; round-trips?<br>
&gt; <br>
&gt; My understanding is that IEEE 754r merely encourages the payloads
to<br>
&gt; be preserved, but I haven't looked recently. &nbsp;Whether we decide
to go<br>
&gt; beyond the requirements of the specification is up to us.<br>
</font></tt>
<br><tt><font size=2>IEEE 754-2008 could only go as far as using Shoulds
for propagation of payloads, because of the varied implementations of binary
formats (different ways of distinguishing signaling NaNs, for example).
&nbsp;The relevant subclause is:</font></tt>
<br>
<br><font size=2 face="Arial-BoldMT"><b>6.2.3 NaN propagation </b></font><font size=1 color=white face="Arial-BoldMT"><b>6.2.3.0</b></font>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;An operation that propagates
a NaN operand to its result and has a single NaN as an input should produce
a</font>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;NaN with the payload of
the input NaN if representable in the destination format.</font>
<br>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;If two or more inputs are
NaN, then the payload of the resulting NaN should be identical to the payload
of </font>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;one of the input NaNs if
representable in the destination format. This standard does not specify
which of the</font>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;input NaNs will provide
the payload. </font>
<br>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;Conversion of a quiet NaN
from a narrower format to a wider format in the same radix, and then back
to the</font>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;same narrower format, should
not change the quiet NaN payload in any way except to make it canonical.</font>
<br>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;Conversion of a quiet NaN
to a floating-point format of the same or a different radix that does not
allow the</font>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;payload to be preserved,
shall return a quiet NaN that should provide some language-defined diagnostic</font>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;information.</font>
<br>
<br><font size=2 face="TimesNewRomanPSMT">&nbsp;There should be means to
read and write payloads from and to external character sequences (see </font><font size=2 color=blue face="TimesNewRomanPSMT">5.12.1</font><font size=2 face="TimesNewRomanPSMT">).</font>
<br>
<br><font size=2 face="TimesNewRomanPSMT">Mike</font>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br><font size=3 face="sans-serif"><br>
</font>
<br><font size=3 face="sans-serif"><br>
</font>
<hr><font size=2 face="sans-serif"><br>
<i><br>
</i></font>
<p><font size=2 face="sans-serif"><i>Unless stated otherwise above:<br>
IBM United Kingdom Limited - Registered in England and Wales with number
741598. <br>
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU</i></font>
<p><font size=2 face="sans-serif"><br>
</font><font size=3 face="sans-serif"><br>
</font>
<br>
<br><font size=3 face="sans-serif"><br>
</font>