Issue #5006 has been updated by mame (Yusuke Endoh).

Status changed from Assigned to Rejected

Hello,

This syntax would bring ambiguity.
Consider "0.~>1". This can parse as:

  0.send("~>", 1)

as well as:

  0.send("~") > 1

.  So I close this ticket as Rejected.


There are some incomplete or arguable points in this proposal.

  - Doesn't Ruby define builtin Integer#~> ?  And what's the behavior?
    If Ruby does not provide Integer#~>, this feature will encourage
    users to define their own Integer#~>, which will bring collision
    and confusion.

  - An inversion method <~ will be needed.  This also brings additional
    parsing ambiguities.

  - The looking is awkward with Japanese font, because a tilde character
    is printed as superscript ;-)

-- 
Yusuke Endoh <mame / tsg.ne.jp>
----------------------------------------
Feature #5006: Allow ~> as a method
https://bugs.ruby-lang.org/issues/5006#change-25193

Author: trans (Thomas Sawyer)
Status: Rejected
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: 
Target version: 


It occurs to me that since RubyGems uses ~> as a recognized version constraint operator (along with >, <, >= and <=) it would be nice if Ruby supported it as a valid method. Ultimately RubyGems could use the new method in it's code. But more generally it could be useful too, as it has a couple of nice features, namely the '~' part can be thought of as meaning "approximate", and as a whole it looks like a pointing arrow.



-- 
http://bugs.ruby-lang.org/