Почему Ruby использует собственный синтаксис для оператора безопасной навигации?
Ruby 2.3.0 представляетсинтаксис безопасной навигации это облегчает обработку цепочек вызовов метода с помощью nil, вводя новый оператор, который вызывает метод, только если значение предыдущего оператора не равноноль, Эта функция уже существует, например, в C #, Groovy и Swift. Напримерв Groovyсинтаксис
foo?.bar
что в основном означает, что значение результата равноfoo.bar еслиFoo являетсянольв этом случае возвращаемое значение такженоль и, таким образом, не исключение. ТакжеC # (называетсянуль-условные операторы) а такжестриж (называетсянеобязательное выражение) используйте эту запись.
Таким образом, синтаксис кажется вполне стандартным в других языках. Теперь, почему в Ruby синтаксис
foo&.bar
вместо?