aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-279/arne-sommer/blog.txt1
-rwxr-xr-xchallenge-279/arne-sommer/raku/ch-1.raku6
-rwxr-xr-xchallenge-279/arne-sommer/raku/ch-2.raku7
-rwxr-xr-xchallenge-279/arne-sommer/raku/sort-letters6
-rwxr-xr-xchallenge-279/arne-sommer/raku/split-string5
-rwxr-xr-xchallenge-279/arne-sommer/raku/split-string-zero7
6 files changed, 32 insertions, 0 deletions
diff --git a/challenge-279/arne-sommer/blog.txt b/challenge-279/arne-sommer/blog.txt
new file mode 100644
index 0000000000..f8b73f7173
--- /dev/null
+++ b/challenge-279/arne-sommer/blog.txt
@@ -0,0 +1 @@
+https://raku-musings.com/sort-of-again.html
diff --git a/challenge-279/arne-sommer/raku/ch-1.raku b/challenge-279/arne-sommer/raku/ch-1.raku
new file mode 100755
index 0000000000..bdec48316f
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/ch-1.raku
@@ -0,0 +1,6 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($letters where $letters.chars > 0,
+ *@weight where @weight.elems eq $letters.chars && all(@weight) ~~ UInt);
+
+say ($letters.comb Z @weight).sort({ $^a.[1] <=> $^b.[1] }).map( *.[0] ).join;
diff --git a/challenge-279/arne-sommer/raku/ch-2.raku b/challenge-279/arne-sommer/raku/ch-2.raku
new file mode 100755
index 0000000000..b5add71ebe
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/ch-2.raku
@@ -0,0 +1,7 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($str where $str.chars > 0);
+
+my $elems = $str.comb.grep( * eq any(<a e i o u>) ).elems;
+
+say so $elems && $elems %% 2;
diff --git a/challenge-279/arne-sommer/raku/sort-letters b/challenge-279/arne-sommer/raku/sort-letters
new file mode 100755
index 0000000000..bdec48316f
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/sort-letters
@@ -0,0 +1,6 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($letters where $letters.chars > 0,
+ *@weight where @weight.elems eq $letters.chars && all(@weight) ~~ UInt);
+
+say ($letters.comb Z @weight).sort({ $^a.[1] <=> $^b.[1] }).map( *.[0] ).join;
diff --git a/challenge-279/arne-sommer/raku/split-string b/challenge-279/arne-sommer/raku/split-string
new file mode 100755
index 0000000000..08b55be341
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/split-string
@@ -0,0 +1,5 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($str where $str.chars > 0);
+
+say $str.comb.grep( * eq any(<a e i o u>) ).elems %% 2;
diff --git a/challenge-279/arne-sommer/raku/split-string-zero b/challenge-279/arne-sommer/raku/split-string-zero
new file mode 100755
index 0000000000..b5add71ebe
--- /dev/null
+++ b/challenge-279/arne-sommer/raku/split-string-zero
@@ -0,0 +1,7 @@
+#! /usr/bin/env raku
+
+unit sub MAIN ($str where $str.chars > 0);
+
+my $elems = $str.comb.grep( * eq any(<a e i o u>) ).elems;
+
+say so $elems && $elems %% 2;