aboutsummaryrefslogtreecommitdiff
path: root/challenge-033
diff options
context:
space:
mode:
authorJoelle Maslak <jmaslak@antelope.net>2019-11-10 08:25:03 -0700
committerJoelle Maslak <jmaslak@antelope.net>2019-11-10 08:25:03 -0700
commit0b17b002f83d597b62bd8043edc0841d3b08cc9e (patch)
treef1f18368f8d9021055373dffaba9cdfc7849751b /challenge-033
parent6a5cfa02c3366be6bc034b20c14fd973c43e78f9 (diff)
downloadperlweeklychallenge-club-0b17b002f83d597b62bd8043edc0841d3b08cc9e.tar.gz
perlweeklychallenge-club-0b17b002f83d597b62bd8043edc0841d3b08cc9e.tar.bz2
perlweeklychallenge-club-0b17b002f83d597b62bd8043edc0841d3b08cc9e.zip
Joelle's solutions to 33.1 in Raku & Perl
Diffstat (limited to 'challenge-033')
-rwxr-xr-xchallenge-033/joelle-maslak/perl5/ch-1.pl23
-rwxr-xr-xchallenge-033/joelle-maslak/perl6/ch-1.p622
2 files changed, 45 insertions, 0 deletions
diff --git a/challenge-033/joelle-maslak/perl5/ch-1.pl b/challenge-033/joelle-maslak/perl5/ch-1.pl
new file mode 100755
index 0000000000..85565ee146
--- /dev/null
+++ b/challenge-033/joelle-maslak/perl5/ch-1.pl
@@ -0,0 +1,23 @@
+#!/usr/bin/env perl
+use v5.16;
+use strict;
+use warnings;
+
+# We define letters as graphemes in any language supported by Perl that
+# match the Alpha class. We display how many times each grapheme
+# appears in the files.
+
+MAIN: {
+ my %letters;
+ while (<<>>) {
+ s/\P{Alpha}//gms;
+ for my $char (split //) {
+ $letters{fc $char}++;
+ }
+ }
+
+ for my $key (sort keys %letters) {
+ say "$key: " . $letters{$key};
+ }
+}
+
diff --git a/challenge-033/joelle-maslak/perl6/ch-1.p6 b/challenge-033/joelle-maslak/perl6/ch-1.p6
new file mode 100755
index 0000000000..ff8a76589a
--- /dev/null
+++ b/challenge-033/joelle-maslak/perl6/ch-1.p6
@@ -0,0 +1,22 @@
+#!/usr/bin/env perl6
+use v6;
+
+# We define letters as graphemes in any language supported by Raku that
+# match the <alpha> class. We display how many times each grapheme
+# appears in the files.
+
+sub MAIN(+@filenames) {
+ my %letters;
+ for @filenames -> $fn {
+ my @chars = $fn.IO.lines.comb: /<alpha>/;
+ for @chars -> $char {
+ %letters{$char.fc}++;
+ }
+ }
+
+ for %letters.keys.sort -> $key {
+ say "$key: {%letters{$key}}";
+ }
+}
+
+