require を忘れる
Ruby のコードをちょっと試したい時、require
を煩わしく感じることがあります。
例えば素数が小さい順に10個欲しくなった時、Rubyist は Ruby でワンライナーを書くでしょう。
$ ruby -e 'require "prime"; require "pp"; pp Prime.take(10)' [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
もしくは、-r
オプションを使用してrequire
を行うかもしれません。
$ ruby -rprime -rpp -e 'pp Prime.take(10)' [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
ですが、これはちょっと面倒ですね。何故私達は-rprime
や-rpp
などといったオプションを指定しなければいけないのでしょうか?
Prime
定数と言ったらprime
ライブラリですし、pp
メソッドと言ったらpp
ライブラリです。Ruby はこんな簡単なことも分からず、"Undefined method"などとのたまうのです。
equire
ですが、そんなイライラとも今日でお別れです。
私達は、Ruby に「Prime
定数と言ったらprime
ライブラリだ」と教えることが出来ます。
それがequire
です。
gem install equire
で今すぐ使いはじめることが出来ます。
equire は Ruby に「Prime
定数はprime
ライブラリだよ」と教えることができます。
それを教わった Ruby は、require
をせずともPrime
定数やpp
を使うことが出来るようになります。
先程の素数を列挙する例を見てみましょう。
$ ruby -require -e 'pp Prime.take(10)' [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
-rpp -rprime
の代わりに、-require
ひとつで済んでいるのがわかりますね。
もっと便利に
でも、-require
を打たなければいけないのはちょっと面倒くさいですね。
そんな面倒くさがりな人のために、もうひとつツールを用意しています。何も言わずにgem install ppcli
してみてください。
$ gem install ppcli $ pp 'Prime.take(10)' [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
なんと、-require
も、pp
も省略できてしまいました。
まとめ
equire
そしてppcli
を使うことで、require
を省略できます。
ちょっとした Ruby のコードを実行する機会が多い人は、試してみてはいかがでしょうか。