A Scala-style "with" Construct for Ruby
↑ScalaのtraitがどうすごいかをRubyとの比較において述べたエントリ。
Rubyとの比較云々は良いとして、クラスをnewするときにtraitをmixinできるのは非常に面白いと思いますね。
Chain Of ResponsibilityとかDecoratorのパターンでオブジェクトの構造を組み立てるところとか、Javaの動的プロキシとか、AOPライクなこととかがとっても簡潔に記述できそうです。
追記:
良く考えると、似たようなことがObjectクラスの変更で出来てしまうRubyの柔軟さもやっぱりすごい。
↑ScalaのtraitがどうすごいかをRubyとの比較において述べたエントリ。
Rubyとの比較云々は良いとして、クラスをnewするときにtraitをmixinできるのは非常に面白いと思いますね。
Chain Of ResponsibilityとかDecoratorのパターンでオブジェクトの構造を組み立てるところとか、Javaの動的プロキシとか、AOPライクなこととかがとっても簡潔に記述できそうです。
追記:
良く考えると、似たようなことがObjectクラスの変更で出来てしまうRubyの柔軟さもやっぱりすごい。