I think you guys are arguing at cross-purposes.  I&#x27;m not sure anyone is arguing that <i>an</i> integer is better than a double for integer representation, but that storing a pair of numeric values (whether they be integers or floating point of some type) allows for more natural expression of numeric values in a high level language, with more fidelity.<p>&gt; &gt; Floats are, by definition, not relevant if one wants to store an exact number exactly.<p>&gt; Floats can store integer values exactly up to an upper limit (2^24 IIRC), which is often useful. And they can store binary fractions exactly up to a point.<p>If you have some knowledge about the number you are storing, such as that it is an integer, then you can use the fact that floats can represent integers exactly to large values.  If you need a general purpose numeric type of which you can&#x27;t assume it&#x27;s an integer, and it needs to be stored exactly, then I think it&#x27;s valid to say that floating point numbers are not relevant, at least not as the entirely of the underlying storage container.<p>&gt; No number representation can represent all numbers exactly. Each can store some subset of all numbers exactly.<p>Yes.  So we are talking about storage mechanisms that allow for more fidelity than plain floats and doubles can achieve.