Issue #14823 has been updated by sawa (Tsuyoshi Sawada).

I agree with shevegen. In case one of the two is to be removed, it is 1.. that should be removed, not the other way around.

My understanding is that the .. notation corresponds to the mathematical notation ] (end of closed interval), whereas ... corresponds to ) (end of open interval). And in mathematics, there is such thing as


$[1, \infty)$


but there is no such thing as


$[1, \infty]$


----------------------------------------
Bug #14823: Endless Range Excluding End
https://bugs.ruby-lang.org/issues/14823#change-72390

* Author: jeremyevans0 (Jeremy Evans)
* Status: Feedback
* Priority: Normal
* Assignee:
* Target version:
* ruby -v: ruby 2.6.0preview2 (2018-05-31 trunk 63539) [x86_64-openbsd]
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
Does it make sense for an endless range to exclude the end?  It is currently supported, but the semantics are questionable.

~~~
(1..)
# => 1..
(1...)
# => 1...
(1...) == (1..)
# => false
~~~

I think it may be better to only allow .. for endless ranges, and not allow .... I think the use of ... with an endless range should be a SyntaxError.

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

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>