# New Ticket Created by ab5tract # Please include the string: [perl #127587] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=127587 >
I discovered this behavior while using IO.watch, but it is also demonstrable with a simple interval supply. It occurs with both Proc::Async and qq:x. I've included both for easy testing. The 'echo' never actually runs. I only get 'interval 1' and then the script returns. # Proc::Async sub MAIN { react { whenever Supply.interval(1) { start { my $phrase = "interval {++$}" .say; my $cmd = Proc::Async.new: 'echo', "echo: $phrase"; $cmd.stdout.tap: *.say; await $cmd.start; } } } } ## qq:x sub MAIN { react { whenever Supply.interval(1) { start { my $phrase = "interval {++$}" .say; qq:x[ echo "echo: $phrase" ]; } } } }