On Sat, Oct 7, 2017 at 10:21 PM, Itsuki Toyota <[email protected]
> wrote:
> See the following result:
>
> $ perl6 -e 'my $proc = Proc::Async.new("yes");
> $proc.stdout.head(1).tap(&say); await $proc.start;'
>
> y
> y
> y
> y
> y
> y
> y
> y
> ...
>
>
> I think tap(&say) should output just a 'y' char and completes its work.
>
No guarantee it's line based, nor do pipes deliver output in lines. You
wanted a .lines in there to 'rechunk' the output; otherwise I suspect you
get blocks based on the size of am OS pipe buffer, or similar.
https://docs.perl6.org/type/Supply#method_lines
--
brandon s allbery kf8nh sine nomine associates
[email protected] [email protected]
unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net