Я ищу следующий синтаксис в Ruby [1,2,3].map {|n| f(n)} -> [1,2,3].map(f(_)).В Scala это называется параметром-заполнителем.
[1,2,3].map {|n| f(n)}
[1,2,3].map(f(_))
Можно ли реализовать в самом ruby?Есть ли планы добавить некоторую форму этого синтаксиса в язык ruby?
Пока нет, но это может произойти в ближайшее время.Наиболее вероятный синтаксис (по состоянию на 2019-08-29) будет
[1, 2, 3].map { f(_1) }
. Вы можете прочитать запрос функции здесь ;последующее обсуждение здесь является более поздним.
Хорошо, похоже, что сама функция называется пронумерованными параметрами и уже доступна в ruby-2.7.0-dev, проверила ее только сейчас.
Пример из вопроса можно записать как [1,2,3].map { f(@1) }
[1,2,3].map { f(@1) }