title: Using attr_reader with a private method of the same instance var name
body: <p>I just encountered a use case where we have a class with an instance variable <code>@errors</code> that is memorized via private method of the same name.</p>
  
  <pre><code>class Foo
    attr_reader :errors
  
    private
  
    # memoized method
    def errors
      @errors ||= []
    end
  end
  
  f = Foo.new
  
  # private method `errors' called for #&lt;Foo:...
  f.errors
  </code></pre>
  
  <p>What is the solution here? Use <code>#instance_variable_get</code> or rename the attribute or method?</p>