title: Trying to understand why mathematical operations between Python Decimal datatype and float datatype are unsupported
body: <p>I encountered the following errors recently as I was using the Decimal object type in my python code to <a href="https://docs.python.org/2/library/decimal.html#mitigating-round-off-error-with-increased-precision" rel="nofollow">mitigate rounding off error</a> as suggested in the Pydocs.</p>
  
  <pre><code>In [173]: Decimal(10) * 0.5
  ---------------------------------------------------------------------------
  TypeError                                 Traceback (most recent call last)
  &lt;ipython-input-173-c778d6cdfd9f&gt; in &lt;module&gt;()
  ----&gt; 1 Decimal(10) * 0.5
  
  TypeError: unsupported operand type(s) for *: 'Decimal' and 'float'
  </code></pre>
  
  <p>This problems occurs for all floats that are used to compute with Decimal objects for all other kinds of operations. However the problem is non-existent for operations with integers:</p>
  
  <pre><code>In [175]: Decimal(10)*5
  Out[175]: Decimal('50')
  </code></pre>
  
  <p>I would greatly appreciate it if someone could explain to me why this is happening. Thank you.</p>