perl6 / rakudo: Perl6 по умолчанию включает "автозапуск"? - PullRequest
5 голосов
/ 20 февраля 2011
#!perl6
use v6;

my $message = "\nHello!\n\nSleep\nTest\n\n";

my @a = $message.split( '' );

for @a {
    sleep 0.3; 
    .print;
}

Включает ли perl6 "автозапуск" по умолчанию.С perl5 без включения «outflush» я не получаю такого поведения.

Ответы [ 2 ]

7 голосов
/ 20 февраля 2011

Rakudo включает автозапуск по умолчанию; В спецификации ничего не сказано о значении по умолчанию.

1 голос
/ 30 марта 2019

Цитирование из документации относительно автоматического сброса:

global Глобальной альтернативы нет. По умолчанию дескрипторы TTY не буферизируются, для других - установите значение out-buffer на ноль или используйте:! Out-buffer с open для определенного IO :: Handle.

Таким образом, любая печать на стандартный вывод не буферизуется, и я думаю, что он будет вести себя подобно автоматическому сбросу стандартного вывода perl5.

Другие дескрипторы зависят от установленного размера внешнего буфера.

...