From: "NAKAMURA, Hiroshi" Date: 2002-04-03T10:22:00+09:00 Subject: [ruby-list:34748] Re: Ruby バージョンの検査法 なひです。 > From: Yukihiro Matsumoto [mailto:matz@ruby-lang.org] > Sent: Wednesday, April 03, 2002 2:13 AM > えーと、もう一度だけまとめます。 > > * 変化はさまざまに発生し、プログラム中での比較は思ったより > 役に立たない > > * 個人的には、ドキュメントの中で動作を確認したバージョンを > 明記するほうが100倍実用的だと思う。 なひもおおむね同意します。おおむねというのは、 ・「あるバージョン以後なら動作します」というチェックは 完璧に役に立たない。なひならそんなチェックは信用しないぞ。:) ・「あるバージョン以前なら動作しません」というチェックは 役に立つので在ってもよい。ただし。。。 > * どうしてもプログラム中で比較したいならば、バージョンに頼 > らず実際に必要なメソッドがあるかどうか、期待した通り動作 > をするかどうかをチェックするプログラムを用意したほうが > (判定が正確なので)よい。 という点から、これ(あるバージョン以前なら動作しません)も ほとんど役に立たない(まつもとさんが指摘したように、perl4と perl5のような、数字の違いが明示的に互換性のなさを表している 場合は使える)。 ちなみに、「どうしてもプログラム中で比較したい」場合に、 「バージョンに頼」るのは問題ないと思います。ただし上記の 理由で、大小比較はほとんど無意味。explicitにやりましょう。 というわけで、大小比較は積極的には支援しないという魔法が かかっているものと思われます。