Пытается понять сложность рубина, но пока не имеет смысла.
5.times(method(:puts))
Дает ошибку, которая не имеет большого смысла. У меня есть какая-то синтаксическая ошибка или это невозможно сделать в ruby?
ArgumentError: wrong number of arguments (given 1, expected 0)
from (irb):78:in `times'
Я пытаюсь сделать что-то похожее на
[0, 1, 2, 3, 4].forEach(console.log)
и
java.util.stream.IntStream.range(0, 5).forEach(System.out::println);
В то же время они работают:
method(:puts).call(1)
# and
5.times { |i| puts i }