triangular_numbers = Enumerator.new do |yielder|
number = 0
count = 1
loop do
number += count
count += 1
yielder.yield number
end
end
这是《ruby programming language》这本书上的一个例子程序,triangular_numbers 可以随着外部调用的次数而增长,我不明白的是:块中的 loop 是如何跑的,是不是外部调用一次 next,然后 loop 就继续跑一次呢?