<story><title>Beating Floating Point at Its Own Game: Posit Arithmetic [pdf]</title><url>http://www.johngustafson.net/pdfs/BeatingFloatingPoint.pdf</url></story><parent_chain></parent_chain><comment><author>Dylan16807</author><text>&amp;gt; There are no “NaN” (not-a-number) bit representations with posits; instead, the calculation is interrupted, and the interrupt handler can be set to report the error and its cause, or invoke a  workaround  and  continue  computing,  but  posits  do not make  the  logical  error  of  assigning a number to something that is, by definition, not a number. This simplifies the hardware considerably.&lt;p&gt;What a strange claim.  Outputting a NaN is easier than raising an interrupt, or could be done within an interrupt, and detecting a NaN input requires a handful of gates or less.&lt;p&gt;This is not to say that NaNs are a good or bad method, but they&amp;#x27;re definitely not expensive to implement.&lt;p&gt;&amp;gt; posits lack a separate ∞ and −∞ [...] “negative zero” is another defiance of mathematical logic that exists in IEEE floats.&lt;p&gt;I will note that the IEEE standard almost had a projective infinity mode, and x87 has that mode.&lt;p&gt;&amp;gt; floats are asymmetric and use those bit patterns for a vast and unused cornucopia of NaN values&lt;p&gt;If we want to ignore languages like javascript and lua, sure.</text></comment>
<story><title>Beating Floating Point at Its Own Game: Posit Arithmetic [pdf]</title><url>http://www.johngustafson.net/pdfs/BeatingFloatingPoint.pdf</url></story><parent_chain></parent_chain><comment><author>copperx</author><text>Here&amp;#x27;s a C&amp;#x2F;C++ partial implementation of posits:&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;libcg&amp;#x2F;bfp&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;libcg&amp;#x2F;bfp&lt;/a&gt;</text></comment>