<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Shape of Code &#187; Standard</title>
	<atom:link href="http://shape-of-code.coding-guidelines.com/tag/standard/feed/" rel="self" type="application/rss+xml" />
	<link>http://shape-of-code.coding-guidelines.com</link>
	<description></description>
	<lastBuildDate>Sun, 12 Feb 2012 20:42:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>What I know of Dennis Ritchie&#8217;s involvement with C</title>
		<link>http://shape-of-code.coding-guidelines.com/2011/10/13/what-i-know-of-dennis-ritchies-involvement-with-c/</link>
		<comments>http://shape-of-code.coding-guidelines.com/2011/10/13/what-i-know-of-dennis-ritchies-involvement-with-c/#comments</comments>
		<pubDate>Thu, 13 Oct 2011 22:54:21 +0000</pubDate>
		<dc:creator>Derek-Jones</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ANSI]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[compiler]]></category>
		<category><![CDATA[Modula-2]]></category>
		<category><![CDATA[noalias]]></category>
		<category><![CDATA[Oberon]]></category>
		<category><![CDATA[Pascal]]></category>
		<category><![CDATA[Ritchie]]></category>
		<category><![CDATA[Standard]]></category>

		<guid isPermaLink="false">http://shape-of-code.coding-guidelines.com/?p=559</guid>
		<description><![CDATA[News that Dennis Ritchie died last weekend surfaced today. This private man was involved in many ground breaking developments; I know something about one of the languages he designed, C, so I will write about that. Ritchie has written about the development of C language. Like many language designers the book he wrote &#8220;The C [...]]]></description>
			<content:encoded><![CDATA[<p>News that Dennis Ritchie died last weekend surfaced today.  This private man was involved in many ground breaking developments;  I know something about one of the languages he designed, C, so I will write about that.  Ritchie has written about the <a href="http://cm.bell-labs.com/cm/cs/who/dmr/chist.html">development of C language</a>.</p>
<p>Like many language designers the book he wrote &#8220;The C Programming Language&#8221; (coauthored with Brian Kernighan in 1978) was the definitive reference for users; universally known as K&#038;R.  The rapid growth in C&#8217;s popularity led to lots of compilers being written, exposing the multiple ways it was possible to interpret some of the wording in K&#038;R.</p>
<p>In 1983 <a href="http://www.ansi.org/">ANSI</a> set up a committee, X3J11, to create a standard for C.  With one exception Ritchie was happy to keep out of the fray of standardization; on only one occasion did he feel strongly enough to <a href="http://www.lysator.liu.se/c/dmr-on-noalias.html">step in and express an opinion</a> and the <code>noalias</code> keyword disappeared from the draft (the <code>restrict</code> keyword surfaced in C99 as a different kind of beast).</p>
<p>A major contribution to the success of the C Standard was the publication of an &#8220;ANSI Standard&#8221; version of K&#038;R (there was a red &#8220;ANSI C&#8221; stamp on the front cover and the text made use of updated constructs like function prototypes and enumeration types), its second edition in 1988.  Fans of the C Standard could, and did, claim that K&#038;R C and ANSI C were the same language (anybody using the original K&#038;R was clearly not keeping up with the times).</p>
<p>Ritchie publicly admitted to making one <a href="http://www.lysator.liu.se/c/dmr-on-or.html">mistake in the design of C</a>.  He thinks that the precedence of the <code>&#038;</code> and <code>|</code>  binary operators should have been greater than the <code>==</code> operator.  I can see his point, but an <a href="http://www.knosof.co.uk/cbook/accu06.html">experiment I ran a few years ago</a> suggested it is amount of experience using a set of operator precedence rules that is the primary contributor to developer knowledge of the subject.</p>
<p>Some language designers stick with their language, enhancing it over the years (e.g., Stroustrup with C++), while others move on to other languages (e.g., Wirth with Pascal, Modula-2 and Oberon).  Ritchie had plenty of other interesting projects to spend his time on and took neither approach.  As far as I can tell he made little or no direct contribution to C99.  As head of the research department  that created <a href="http://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs">Plan 9</a> he must have had some input to the non-Standard features of their <a href="http://doc.cat-v.org/bell_labs/new_c_compilers/new_c_compiler.pdf">C compiler</a> (e.g., no support for <code>#if</code> and support for unnamed structures).</p>
<p>While the <a href="http://shape-of-code.coding-guidelines.com/2011/03/17/a-change-of-guard-in-the-c-standards-world/">modern C</a> world may not be affected by his passing, his ability to find simple solutions to complicated problems will be a loss to the projects he was currently working on.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fshape-of-code.coding-guidelines.com%2F2011%2F10%2F13%2Fwhat-i-know-of-dennis-ritchies-involvement-with-c%2F&amp;title=What%20I%20know%20of%20Dennis%20Ritchie%26%238217%3Bs%20involvement%20with%20C" id="wpa2a_2"><img src="http://shape-of-code.coding-guidelines.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://shape-of-code.coding-guidelines.com/2011/10/13/what-i-know-of-dennis-ritchies-involvement-with-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build an ISO Standard and the world will beat a path to your door</title>
		<link>http://shape-of-code.coding-guidelines.com/2010/12/16/build-an-iso-standard-and-the-world-will-beat-a-path-to-your-door/</link>
		<comments>http://shape-of-code.coding-guidelines.com/2010/12/16/build-an-iso-standard-and-the-world-will-beat-a-path-to-your-door/#comments</comments>
		<pubDate>Thu, 16 Dec 2010 00:58:50 +0000</pubDate>
		<dc:creator>Derek-Jones</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[ISO]]></category>
		<category><![CDATA[Modula-2]]></category>
		<category><![CDATA[Standard]]></category>
		<category><![CDATA[undefined behavior]]></category>

		<guid isPermaLink="false">http://shape-of-code.coding-guidelines.com/?p=329</guid>
		<description><![CDATA[An email I received today, announcing the release of version 1.0 of the GNU Modula-2 compiler, reminded me of some plans I had to write something about a proposal to add some new definitions to the next version of the ISO C Standard. In the 80s I was heavily involved in the Pascal community and [...]]]></description>
			<content:encoded><![CDATA[<p>An email I received today, announcing the release of version 1.0 of the <a href="http://www.nongnu.org/gm2/">GNU Modula-2 compiler</a>, reminded me of some plans I had to write something about a <a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1350.htm">proposal to add some new definitions</a> to the next version of the <a href="http://www.open-std.org/jtc1/sc22/wg14/">ISO C Standard</a>.</p>
<p>In the 80s I was heavily involved in the <a href="http://en.wikipedia.org/wiki/Pascal_%28programming_language%29">Pascal</a> community and some of the leading members of this community thought that the successor language designed by <a href="http://en.wikipedia.org/wiki/Niklaus_Wirth">Niklaus Wirth</a>, Modula-2, ought to be the next big language.  Unfortunately for them this view was not widely shared and after much soul searching it was decided that the lack of an ISO standard for the language was responsible for holding back widespread adoption.  A <a href="http://sc22wg13.twi.tudelft.nl/">Modula-2 ISO Standard</a> was produced and, as they say, the rest is history.</p>
<p>The C proposal involves dividing the existing definition <a href="http://c0x.coding-guidelines.com/4..html">undefined behavior</a> into two subcategories; <em>bounded undefined behavior</em> and <em>critical undefined behavior</em>.  The intent is to provide guidance to people involved with software assurance.  My long standing <a href="http://www.knosof.co.uk/cbook">involvement with C</a> means that I find the technical discussions interesting; I have to snap myself out of getting too involved in them with the observation that should the proposals be included in the revised C Standard they will probably have the same impact as the publication of the ISO Standard had on Modula-2 usage.</p>
<p>The only way for changes to an existing language standard to have any impact on developer usage is for them to require changes to existing compiler behavior or to specify additional runtime library functionality (e.g., <a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1225.pdf">Extensions to the C Library Part I: Bounds-checking interfaces</a>).</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fshape-of-code.coding-guidelines.com%2F2010%2F12%2F16%2Fbuild-an-iso-standard-and-the-world-will-beat-a-path-to-your-door%2F&amp;title=Build%20an%20ISO%20Standard%20and%20the%20world%20will%20beat%20a%20path%20to%20your%20door" id="wpa2a_4"><img src="http://shape-of-code.coding-guidelines.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://shape-of-code.coding-guidelines.com/2010/12/16/build-an-iso-standard-and-the-world-will-beat-a-path-to-your-door/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A fault in the C Standard or existing compilers?</title>
		<link>http://shape-of-code.coding-guidelines.com/2009/02/24/a-fault-in-the-c-standard-or-existing-compilers/</link>
		<comments>http://shape-of-code.coding-guidelines.com/2009/02/24/a-fault-in-the-c-standard-or-existing-compilers/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 00:32:45 +0000</pubDate>
		<dc:creator>Derek-Jones</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[compiler fault]]></category>
		<category><![CDATA[fault]]></category>
		<category><![CDATA[function declaration]]></category>
		<category><![CDATA[scope]]></category>
		<category><![CDATA[specification]]></category>
		<category><![CDATA[Standard]]></category>

		<guid isPermaLink="false">http://shape-of-code.coding-guidelines.com/?p=72</guid>
		<description><![CDATA[Software is not the only entity that can contain faults. The requirements listed in a specification are usually considered to be correct, almost by definition. Of course the users of software implementing a specification may be unhappy with the behavior specified and wish that some alternative behavior occurred. A cut and dried fault occurs when [...]]]></description>
			<content:encoded><![CDATA[<p>Software is not the only entity that can contain faults.  The requirements listed in a specification are usually considered to be correct, almost by definition.  Of course the users of software implementing a specification may be unhappy with the behavior specified and wish that some alternative behavior occurred.  A cut and dried fault occurs when two requirements conflict with each other.</p>
<p>The <a href="http://www.open-std.org/JTC1/SC22/WG14/">C Standard</a> can be read as a specification for how C compilers should behave.  Despite over 80 man years of effort and the continued scrutiny of developers over 20 years, faults continue to be uncovered.  The latest potential fault (it is possible that the fault actually occurs in many existing compilers rather than the C Standard) was brought to my attention by Al Viro, one of the  <a href="http://en.wikipedia.org/wiki/Sparse">Sparse</a> developers.</p>
<p>The issue involved the following code (which I believe the standard considers to be strictly conforming, but all the compilers I have tried disagree):</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #993333;">int</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">*</span>f<span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> x<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#91;</span><span style="color: #993333;">sizeof</span> x<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>  <span style="color: #666666; font-style: italic;">// A prototype declaration</span>
&nbsp;
<span style="color: #993333;">int</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">*</span>g<span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> y<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#91;</span><span style="color: #993333;">sizeof</span> y<span style="color: #009900;">&#93;</span>  <span style="color: #666666; font-style: italic;">// A function definition</span>
<span style="color: #009900;">&#123;</span>
<span style="color: #b1b100;">return</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>These function declarations are unusual in that their return type is a pointer to an array of integers, a type rarely encountered in this context (the original question involved a return type of pointer to function returning &#8230; and was more complicated).</p>
<p>The specific issue was the scope of the parameter (i.e., <code>x</code> and <code>y</code>), is the declaration still in scope at the point that the second occurrence of the identifier is encountered?</p>
<p>As a principle I think that the behavior, whatever it turns out to be, should be the same in both cases (neither the C standard or its rationale state such a principle).</p>
<p>Taking the function prototype case first:</p>
<p>The scope of the parameter x &#8220;<a href="http://c0x.coding-guidelines.com/6.2.1.html">&#8230; terminates at the end of the function declarator.</a>&#8221; (sentence 409).</p>
<p>and does function prototype scope include the return type (the syntax calls the particular construct a <em>declarator</em> and there are at least two of them, one nested inside the other, in a function prototype declaration)?</p>
<p><a href="http://c0x.coding-guidelines.com/6.7.5.3.html">Sentence 1592</a> says Yes, but sentence <a href="http://c0x.coding-guidelines.com/5.2.4.1.html">279</a> and <a href="http://c0x.coding-guidelines.com/6.9.1.html">1845</a> say No.</p>
<p>None of these references are normative references (standardize for definitive).</p>
<p>Moving on to the function definition case:</p>
<p>Where does the scope of the parameter <code>x</code> begin (sentence 418)?<br />
&#8220;<a href="http://c0x.coding-guidelines.com/6.2.1.html">&#8230; scope that begins just after the completion of its declarator.</a>&#8221;</p>
<p>and where does the scope end (sentence 408)?<br />
&#8220;<a href="http://c0x.coding-guidelines.com/6.2.1.html">&#8230; which terminates at the end of the associated block.</a>&#8221;</p>
<p>and what happens between the beginning and ending of the scope (sentence 412)?<br />
&#8220;<a href="http://c0x.coding-guidelines.com/6.2.1.html">Within the inner scope, the identifier designates the entity declared in the inner scope;</a>&#8221;</p>
<p>This looks very straight forward, there are no &#8216;gaps&#8217; in the scope of the parameter definition appearing in a function definition.  Consistency with the corresponding function prototype case requires that <em>function declarator</em> be interpreted to include the return type.</p>
<p>There is a related discussion involving a previous <a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/dr_345.htm">Defect Report 345</a> submitted a while ago.</p>
<p>The problem is that many existing compilers do not treat parameter scope in this way.  They operate as-if there was a &#8216;gap&#8217; in the parameter scope of function definition (probably because the code implementing this functionality is shared with that implementing function prototypes, which have been interpreted to not include the return type).</p>
<p>What happens next?  Probably lots of discussion on the C Standard email reflector.  Possible outcomes include somebody finding wording that requires a &#8216;gap&#8217; in the scope of parameters in function definitions, it agreed that such a gap ought to be specified by the standard (because this is how existing code behaves because this is how compilers operate), or that the standard is correct as is and any compiler that behaves differently needs to be fixed.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fshape-of-code.coding-guidelines.com%2F2009%2F02%2F24%2Fa-fault-in-the-c-standard-or-existing-compilers%2F&amp;title=A%20fault%20in%20the%20C%20Standard%20or%20existing%20compilers%3F" id="wpa2a_6"><img src="http://shape-of-code.coding-guidelines.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://shape-of-code.coding-guidelines.com/2009/02/24/a-fault-in-the-c-standard-or-existing-compilers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C++ goes for too big to fail</title>
		<link>http://shape-of-code.coding-guidelines.com/2008/12/08/c-goes-for-too-big-to-fail/</link>
		<comments>http://shape-of-code.coding-guidelines.com/2008/12/08/c-goes-for-too-big-to-fail/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 23:58:36 +0000</pubDate>
		<dc:creator>Derek-Jones</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[parsing]]></category>
		<category><![CDATA[Standard]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://shape-of-code.coding-guidelines.com/?p=26</guid>
		<description><![CDATA[If you believe the Whorfian hypothesis that language effects thought, even in one of its weaker forms, then major changes to a programming language will effect the shape of the code its users write. I was at the first International C++ Standard meeting in London during 1991 and coming from a C Standard background I [...]]]></description>
			<content:encoded><![CDATA[<p>If you believe the <a href="http://en.wikipedia.org/wiki/Sapir-Whorf_hypothesis">Whorfian hypothesis</a> that language effects thought, even in one of its <a href="http://www-psych.stanford.edu/~lera/papers/mandarin.pdf">weaker forms</a>, then major changes to a programming language will effect the shape of the code its users write.</p>
<p>I was at the first International <a href="http://www.open-std.org/jtc1/sc22/wg21/">C++ Standard</a> meeting in London during 1991 and coming from a <a href="http://www.open-std.org/jtc1/sc22/wg14/">C Standard</a> background I could not believe the number of new constructs being invented (the C committee had a stated principle that a construct be supported by at least one implementation before it be considered for inclusion in the standard; ok, this was not always followed to the letter).  The C++ committee members continued to design away, putting in a huge amount of effort, and the document was ratified before the end of the century.</p>
<p>The standard is currently undergoing a major revision and the amount of language design going on puts the original committee to shame. With over 1,300 pages in the <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2798.pdf">latest draft</a> nobodies favorite construct is omitted.  The <a href="www.justsoftwaresolutions.co.uk/bsi">UK C++ panel</a> has over 10 people actively working on producing comments and may produce over 1,000 on the latest draft.</p>
<p>With so many people committed to the approach being taken in the development of the revised C++ Standard its current direction is very unlikely to change.  The fact that most &#8216;real world&#8217; developers only understand a fraction of what is contained in the existing standard has not stopped it being very widely used and generally considered as a &#8216;success&#8217;.  What is the big deal over a doubling of the number of pages in a language definition, the majority of developers will continue to use the small subset that they each individually have used for years.</p>
<p>The large number of syntactic ambiguities make it is very difficult to parse C++ (semantic information is required to <a href="http://www.cs.clemson.edu/~malloy/papers/tanton/paper.ps">resolve the ambiguities</a> and the code to do this is an at least an order of magnitude bigger than the lexer+parser).  This difficulty is why there are <a href="http://os.inf.tu-dresden.de/vfiasco/related.html#parsing">so few source code analysis tools</a> available for C++, compared to C and Java which are much much easier to parse.  The difficulty of producing tools means that researchers rarely analyse C++ code and only reasonably well funded efforts are capably of producing worthwhile static analysis tools.</p>
<p>Like many of the active committee members I have mixed feelings about this feature bloat.  Yes it is bad, but it will keep us all actively employed on interesting projects for many years to come.  As the current financial crisis has shown, one of the advantages of being big and not understood is that you might get to being too big to fail.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fshape-of-code.coding-guidelines.com%2F2008%2F12%2F08%2Fc-goes-for-too-big-to-fail%2F&amp;title=C%2B%2B%20goes%20for%20too%20big%20to%20fail" id="wpa2a_8"><img src="http://shape-of-code.coding-guidelines.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://shape-of-code.coding-guidelines.com/2008/12/08/c-goes-for-too-big-to-fail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Will IEEE 754 become a fringe representation?</title>
		<link>http://shape-of-code.coding-guidelines.com/2008/12/01/will-ieee-754-become-a-fringe-representation/</link>
		<comments>http://shape-of-code.coding-guidelines.com/2008/12/01/will-ieee-754-become-a-fringe-representation/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 01:13:55 +0000</pubDate>
		<dc:creator>Derek-Jones</dc:creator>
				<category><![CDATA[floating-point]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[IEEE 754]]></category>
		<category><![CDATA[Standard]]></category>

		<guid isPermaLink="false">http://shape-of-code.coding-guidelines.com/?p=5</guid>
		<description><![CDATA[Many people believe that with a few historical exceptions the IEEE 754 standard has won the floating-point value bit-representation battle.  What these people have forgotten is that money rules; customers are willing to ditch standards if it increases profit. FPGA devices can be configured to perform float-point operations faster and more cheaply than commodity cpus. [...]]]></description>
			<content:encoded><![CDATA[<p>Many people believe that with a few historical exceptions the <a href="http://en.wikipedia.org/wiki/IEEE_754">IEEE 754</a> standard has won the <a href="http://en.wikipedia.org/wiki/Floating-point">floating-point</a> value bit-representation battle.  What these people have forgotten is that money rules; customers are willing to ditch standards if it increases profit. <a href="http://en.wikipedia.org/wiki/Field-programmable_gate_array">FPGA</a> devices can be configured to perform float-point operations faster and more cheaply than <a href="http://citeseer.ist.psu.edu/749789.html">commodity cpus</a>.</p>
<p>Making optimal use of a FPGA may require using a <a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.91.6889">radix of 4</a> and for the time being automatically convert back and forth between an external 754 radix-2 representation.  In those cases where multiplication/division operations are more common than addition/subtraction use of a <a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.77.4957">logarithmic number system</a> has performance benefits.  For specialist scientific calculations (where cpu time is measured in days) <a href="http://citeseer.ist.psu.edu/749789.html">purpose built FPGA devices</a> are the path to significant performance improvements.  In many mass market applications the full power of a 32-bit representation is not needed and a <a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.18.6035">representation using fewer bits</a> does an acceptable job using less powerful (ie, cheaper) hardware.</p>
<p>Customer demand for higher performance and lower cost will push vendors to deliver purpose designed products.  IEEE 754 may be the floating-point representation that people without spending power use because it was once  designed into cpus and vendors are forced to continue to support it for backwards compatibility.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fshape-of-code.coding-guidelines.com%2F2008%2F12%2F01%2Fwill-ieee-754-become-a-fringe-representation%2F&amp;title=Will%20IEEE%20754%20become%20a%20fringe%20representation%3F" id="wpa2a_10"><img src="http://shape-of-code.coding-guidelines.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://shape-of-code.coding-guidelines.com/2008/12/01/will-ieee-754-become-a-fringe-representation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

