Module#module_function
Module#module_functionを使うと、メソッドをモジュール関数としてコピーします。プログラミングRubyでは「モジュールメソッド」と呼んでいますが、module_functionというメソッド名ですね。
Rubyでは「コピーする」というのがよく出てくるように思います。融通無碍。
module RubycoModule def hello # メソッド return "Hello!" end module_function :hello # モジュール関数としてコピー end class Rubyco include RubycoModule def greeting return hello() # メソッドのほうを呼ぶ end end p RubycoModule.hello # => "Hello!" p Rubyco.new.greeting # => "Hello!" # メソッドを再定義する module RubycoModule def hello return "Re-defined Hello!" end end # モジュール関数は変わらないが、インスタンスメソッドは変わる p RubycoModule.hello # => "Hello!" p Rubyco.new.greeting # => "Re-defined Hello!"