あらかじめ断っておきますが、オチはありません。
やっぱり「あらかじめ」は最初に使いたい。よく南武線に乗ってから、「京浜東北線が○○の理由により、現在運転を見合わせております。あらかじめご了承下さい。」などという放送がなされることがあるが、まったくあらかじめっていない。それならば、さっき先に来た反対方向、立川方面行きに乗って溝ノ口経由で行きたかった。
いきなり脱線してしまったが、Rubyの配列の要素数はsizeメソッドでもlengthメソッドでも良いらしい。ずっと何かの本にたまたま載っていたlengthを使っていたが、最近買ったRails本「Ruby on Rails入門―優しいRailsの育て方」ではsizeを使っていたのでアレっと思っただけです。
ひょっとして、全てのオブジェクトに実装されている?
 irb(main):001:0> [1,2,3].size
 => 3
 irb(main):002:0> [1,2,3].length
 => 3
 irb(main):003:0> "123".size
 => 3
 irb(main):004:0> "123".length
 => 3
 irb(main):005:0> 123.size
 => 4
 irb(main):006:0> 123.length
 NoMethodError: undefined method `length' for 123:Fixnum
         from (irb):6
         from :0
 irb(main):007:0> 123.5.size
 NoMethodError: undefined method `size' for 123.5:Float
         from (irb):7
         from :0
 irb(main):008:0> 123.5.length
 NoMethodError: undefined method `length' for 123.5:Float
         from (irb):8
         from :0
Fixnumはsizeがあってlengthがない、Floatはどちらもないのが面白い。Fixnumのsizeは何を表すのだろうと思い、調べたら実装上のバイト数らしい。
 irb(main):018:0> 1234567890.size
 => 4
 irb(main):019:0> 12345678901.size
 => 8
 irb(main):020:0> 12345678901234567890.size
 => 8
 irb(main):021:0> 123456789012345678901234567890.size
 => 16
なかなか面白い。しかし、その理由ならFloatにsizeがあっても良いように思われるのだが。まぁ、配列と文字列以外では必要なさそうなので、深く考えない事にしよう(オチなし)