今まで気がつかなかった。

emacs rails.el でTab補完がサポートされていた、という驚愕の事実。しかもかなり精度がいい。なるべくインスタンスメソッドを使うときは self. で呼び出してあげると、さらに精度がよい(気がする)。
しかし、以下のコードはエラーなので注意。

irb(main):001:0> class Hoge
irb(main):002:1>   def hoge
irb(main):003:2>     self.fuga
irb(main):004:2>   end
irb(main):005:1>   private
irb(main):006:1>   def fuga
irb(main):007:2>     puts "fuga"
irb(main):008:2>   end
irb(main):009:1> end
=> nil
irb(main):010:0> Hoge.new.hoge
NoMethodError: private method `fuga' called for #<Hoge:0xb7f2a03c>
        from (irb):3:in `hoge'
        from (irb):10
        from :0

静的型言語ならエラーにならなかった気がするんだが。