elsif でエラー(汗)。それunlessで始まっていない?
参った、何でelsifが使えないんだと思ったら、無意識にunlessを使っていた。
perlだと普通にunlessでも使えたから、ついね。
どうやら、rubyでは、"if not" == "unless" ではなく、あくまで"if not"の省略形として、
別で存在するステートメントとしてunlessが存在するらしい。
つまり、unlessは、きれいにまとまるとき以外は使わないほうがいいということでしょう。たぶん。
参考:
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/16431