Ruby使ったことない人間から見た、与太話ということで・・・
(コメント欄を廃止にしていてよかった ^^;)
オープンソースカンファレンス2008 Tokyo/Springに、今日も行ってきて、その報告は、これからするんだけど、
その前に、気になったこと。
Rubyの、1.9の新機能の説明(1.9.0が出た)で気になったんだけど、
Ruby1.9から、
"文字列".size
は、バイト数でなく、文字数を返すことに「変更されたらしい」
そして、バイト数をほしい場合は、
"文字列".bytesize
ってするらしい。。。
ってことは、
文字列のバイト数を数えて何かしているような処理は、変更になる。
・・・ってこと・・
それって、変更大きなような気が。。
で、さらに、
"文字列"[2]
とすると、1.9の場合は、”列”(3字目)がかえるらしい
(1.8だと、字の上位コード(3バイト目)が数値で返るらしい)
ってことは、そーやってアクセスしている人も見直しってことですよねえ。。
Rubyって使ったことないんだけど、
使っている人は、この1.9の仕様変更、たいへんなんじゃないのかなあ?
ふつうだと、bytesizeというのを追加するのではなく、
sizeに関しては昔と動きを同じようにして、
localsizeとか、新しいメソッドをつくって、それに新しい機能
(=文字数を知る)とかする。
そーすると、互換性が取れるから。
でも、これ、互換性ないから、全部size使っているところはチェックしないと
いけないわけでしょー。
そのチェックも、まずたいへん。
それと、ホスティングサービスなんかだと、1.9にあげてしまうと、いきなり動かない!
と文句言われるお客さんも出てきそうなので・・・
うーん・・・どーなんでしょー
1.9をもっと使ってもらうには?
って言ってたけど、たぶん、この事実を知ったら、
ふつう、1.9で自分のプログラム、検証するだろうから、
すぐにつかわれそうな気がするのは、
ウィリアムのいたずらだけ?
P.S っていうか、たぶん、こーいうリスクがあるから
業務プログラムではRuby使わないってこと・・・??
なんか、納得できた(^^;)