RAKUDO_SCHEDULER_DEBUG=1 perl6-gdb-m --ll-exception -e 'while 1 { use 
v6.d.PREVIEW; my %c = (:0reactor_count); my $s = supply { whenever 
IO::Socket::Async.listen("0.0.0.0", 5000) -> $c-conn { %c{$c-conn}<bar>++; emit 
$c-conn; %c{$c-conn}<msgs-supplier> = Supplier.new; $c-conn.Supply.lines.tap({ 
%c{$c-conn}<msgs-supplier>.emit: $_ }); } }; sub start_reactor ($msgs-in) { 
start { react whenever $msgs-in -> $msg-in { say "before"; say QX("echo foo"); 
say "after"; %c<reactor_count>++; } } }; start { react whenever $s -> $c-conn { 
start { start_reactor(%c{$c-conn}<msgs-supplier>.Supply); } } }; sleep 1; my $c 
= await IO::Socket::Async.connect("0.0.0.0", 5000); await $c.print("foo\n"); 
sleep 1; }'

Eventually prints out (for me):

Unhandled exception in code scheduled on thread 4
Too few positionals passed; expected 6 arguments but got 2
  in block  at SETTING::src/core/IO/Socket/Async.pm line 151
  in block  at SETTING::src/core/ThreadPoolScheduler.pm line 225
  in block  at SETTING::src/core/ThreadPoolScheduler.pm line 224
  in method run-one at SETTING::src/core/ThreadPoolScheduler.pm line 224
  in method dispatch:<!> at SETTING::src/core/Mu.pm line 732
  in block  at SETTING::src/core/ThreadPoolScheduler.pm line 258

Reply via email to