Ruby 2.0.0リリース! – prependを使ってみよう

Ruby20周年おめでとうございます。そして、待望の2.0.0がリリースされましたね! 1.8から1.9になったときと違い、互換性がなくなる変更は少ないので、比較的移行は楽そうです。 有名かつ大きな新機能は キーワード引数 Module#prepend Enumerable#lazy Refinements ですが、ここではprependについて見てみます。 prependはメソッド探索チェーンの手前にmoduleを差し込む機能であって、何がうれしいかといえばalias_method_chainと同じことがシンプル・高速に実現できるということです。 たとえば以下のようなクラスがあったとします。 class Per … Continue reading Ruby 2.0.0リリース! – prependを使ってみよう