try { my $proc = Proc::Async.new('bad-executable', :w); my $done = $proc.start; say "try sending to bad executable"; await $proc.say("hi there"); say "worked"; $proc.close-stdin; await $done; CATCH { default { say "caught"; } } } say "done";