aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-132/mark-anderson/raku/ch-2.raku22
1 files 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<ages>:exists and %b<names>:exists
+ {
+ for %b<ages><> X %b<names><>
+ {
+ printf "%-3d%-6s%s\n", .[0], $k, .[1];
+ }
}
}