title: How to call super in an initialize method when both class inheritance and Module include is being used?
body: <p>How does the look-path decide where to call "super" if I have a module included along with class inheritance. My hunch is that by default it will use the initialize method in the module. Is this correct? And if so, how do I explicitly tell the code to use the initialize method in the inherited class instead? </p>
  
  <p>Posted below is an example:</p>
  
  <p>I want the Employee class to inherit initialize from Other and not Subject. </p>
  
  <pre><code>  module Subject
      def initialize
        @observers = []
      end
    end
  
    class Other
      def initialize
        @other_stuff = []
      end
    end
  
    class Employee &lt; Other
      include Subject 
  
      attr_reader :name
  
      def initialize(name)
       super()
      end
    end
  </code></pre>