Ответ 1
Вам нужно использовать печать вместо puts. Кроме того, если вы хотите, чтобы точки отображались плавно, вам нужно очистить буфер stdout после каждой печати...
def print_and_flush(str)
print str
$stdout.flush
end
100.times do
print_and_flush "."
sleep 1
end
Изменить: я просто искал рассуждения за флешем, чтобы ответить на комментарий @rubyprince, и понял, что это можно немного почистить, просто используя $stdout.sync = true
...
$stdout.sync = true
100.times do
print "."
sleep 1
end