title: Python: how to overload reflected numeric operators from C
body: <p>From python, we can overload operators like so:</p>
  
  <pre><code>class X:
      def __add__(self, i):
          return i+3;
      def __radd__(self, i):
          return i+4
  
  x = X()
  print x+0  # prints 3
  print 0+x  # prints 4
  </code></pre>
  
  <p>If we wish to implement X in a C extension module, we must explicitly register operator overloads. __add__ is doable:</p>
  
  <pre><code>X_type.tp_as_number.nb_add = &amp;X_add;
  </code></pre>
  
  <p>But there seems to be no corresponding slot for __radd__. Where is it?</p>