デフォルト引数
ある引数のデフォルト値を、他の引数と同じにしたいことがある。
それを今まではこう書いていた。
def f(arg1,arg2=nil) if arg2 == nil then arg1 = arg2 end # ... end
でも、直接デフォルト値として設定してやったほうが簡潔だと気がついた。
def f(arg1,arg2=arg1) # ... end
こっちのほうが簡潔だ。
http://www.loveruby.net/w/CrackingRuby.htmlに載ってたことを思い出して使ってみた。初め読んだときは無駄だと思ったけど、ちゃんと使い道あるね。