Если я правильно понимаю, текст выводится с буферизацией на любой платформе, но работает эта буферизация по-разному: на Windows (и, возможно, на Linux) буфер сбрасывается часто, а на macOS только при переполнении или завершении программы, не иначе как bug.
Можно и добавить :stdout.flush(), но...