私はRubyチュートリアル(フープと笑いのためだけに)を進めています。例の1つを実験していると、この動作は予期しないものでした。
s = "hello"
s[1, 2] # => "el"
s[1 .. 2] # => "el"
s[-4 .. -3] # => "el"
s[-4, -3] # => nil ... but why?
最後の行で前の行と同じ結果が得られると思っていました。結局のところ、それは正のスライス値でそのように機能します。どこが間違っているのですか?