アクトインディ開発者ブログ

子供とお出かけ情報「いこーよ」を運営する、アクトインディ株式会社の開発者ブログです

括り出したい

こんにちは、千葉です! 完全なるネタ切れです。 以前のエントリーにも書きましたが、私は返り値をできるだけ使いたくなってしまう派です。 値を返すところは積極的に拾ってゆきたい。 そういう質なので、

if pred
  method(100)
else
  method(200)
end

のようなものを見ると

method(if pred
         100
       else
         200
       end)

と書きたくなってしまいます。ifは分岐が2つですが、Rubyのcase等の複数への分岐も同じくそうです。 LISPだと

(method (if pred 100 200))

という感じですが、このifの纏め方は、LISPではすんなり流れるものの、Rubyだとif〜endが重たくみえるので、なんとなく書いてはいけないようにさえ感じます。
条件演算子なら

method(pred ? 100 : 200)

という風にすっきりなのですが、なんとなく読みづらいですね。