title: Problem with accessing superclass methods in method redefinitions
body: <p>I am having a bit trouble to understand when "super" can be called and when not. In the below example the super method leads to a no superclass error.</p>
  
  <pre><code>class Bacterium
    def eats
      puts "Nam"
    end
  end
  
  class Bacterium
    def eats
      super # -&gt; no superclass error
      puts "Yam"
    end
  end
  
  b = Bacterium.new
  b.eats
  </code></pre>
  
  <p>But this works:</p>
  
  <pre><code>class Fixnum
    def times
      super # -&gt; works
      puts "done"
    end
  end
  
  5.times { |i| puts i.to_s }
  </code></pre>
  
  <p>Is 5 not just also an instance of Fixnum. And am I not redefining an existing method like in the Bacterium example above?</p>