title: Why are my BigDecimal objects initialized with unexpected rounding errors?
body: <p>In Ruby 2.2.0, why does:</p>
  
  <pre><code>BigDecimal.new(34.13985572755337, 9)
  </code></pre>
  
  <p>equal <code>34.0</code> but</p>
  
  <pre><code>BigDecimal.new(34.13985572755338, 9)
  </code></pre>
  
  <p>equal <code>34.1398557</code>?</p>
  
  <p>Note that I am running this on a 64 bit machine. </p>