On Fri, May 8, 2020 at 6:53 AM Brad Gilbert <b2gills@gmail.com> wrote: > So together that would be: > > raku -ne 'BEGIN my @i; @i.push($_) if /^WARN/; END .say for @i.sort' > Or alternately the main body of the loop can be written: (my @i).push($_) if /^WARN/; Or even: push my @i: $_ if /^WARN/; It's so nice how Raku essentially compiles the body of these file loops into a little subroutine so that the "my" declaration only occurs once, unlike how Perl 5 just textually wraps the loop with "while (<>) {" and "}" which makes the declaration occur on every iteration. I originally figured this out when I idly worked up a classic word-frequency-count one-liner: raku -ne '++(my %freq){$_} for m:g/\w+/; END .say for %freq.antipairs.sort.reverse' file ...Thread Previous | Thread Next