>>131
関数の責任の範囲を変えることになるんだけど、たぶんこういうことなんじゃないか。
http://codepad.org/UXSIJM1T