まったくもって理解していなかったどころか、存在すら知らなかった。
RubyGemsでは、"gem gem_name, version_requirements"のようにして、バージョン縛りのrequireができるという様な事は理解していました。が、実際にソースを読んで何をしているかを調べてはいませんでした。
最近、「gem 'ruby-openid', '~> 2' if defined? Gem」というコードを目にしたわけですが、この"~>"が理解できなかったわけです。はじめ、「大なりの否定?」かと思ったわけですが、そういうわけでもなく。
ソースを眺めた結果、どうも「要求バージョン以上で、かつ最後のリビジョン番号(?)を越えない」という様な意味らしい事が分かりました。例えば、「"~>2"」なら「2以上、3未満」で、「"~>2.1"」なら「2.1以上、2.2未満」と。
さて、間違ってますかね?

