From 2c31b356dc2dbdd602f7534d2e4f42f8cca35e93 Mon Sep 17 00:00:00 2001 From: Mark A Date: Thu, 30 Sep 2021 22:55:06 -0600 Subject: classify-list --- challenge-132/mark-anderson/raku/ch-2.raku | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/challenge-132/mark-anderson/raku/ch-2.raku b/challenge-132/mark-anderson/raku/ch-2.raku index 215b866c0e..604cda2738 100644 --- a/challenge-132/mark-anderson/raku/ch-2.raku +++ b/challenge-132/mark-anderson/raku/ch-2.raku @@ -1,29 +1,31 @@ #!/usr/bin/env raku -my @players-age = < 20 Alex >, +my @player-ages = < 20 Alex >, < 28 Joe >, < 38 Mike >, < 18 Alex >, < 25 David >, < 18 Simon >; -my @players-name = < Alex Stewart >, +my @player-names = < Alex Stewart >, < Joe Root >, < Mike Gatting >, < Joe Blog >, < Alex Jones >, < Simon Duane >; -my %a = @players-age.classify({ .[1] }, :as{ .[0] }); -my %n = @players-name.classify({ .[0] }, :as{ .[1] }); +my %a = % .classify-list: :as{ .[0] }, { .[1], 'ages' }, @player-ages; + %a .= classify-list: :as{ .[1] }, { .[0], 'names' }, @player-names; for %a.keys.sort -> $k { - if %n{$k}:exists - { - for %a{$k}<> X %n{$k}<> - { - printf("%-3d%-6s%s\n", .[0], $k, .[1]); - } + my %b = %a{$k}; + + if %b:exists and %b:exists + { + for %b<> X %b<> + { + printf "%-3d%-6s%s\n", .[0], $k, .[1]; + } } } -- cgit