aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-180/wambash/raku/ch-1.raku22
-rw-r--r--challenge-180/wambash/raku/ch-2.raku16
2 files changed, 38 insertions, 0 deletions
diff --git a/challenge-180/wambash/raku/ch-1.raku b/challenge-180/wambash/raku/ch-1.raku
new file mode 100644
index 0000000000..155f684753
--- /dev/null
+++ b/challenge-180/wambash/raku/ch-1.raku
@@ -0,0 +1,22 @@
+#!/usr/bin/env raku
+
+multi first-unique-charakter (Str $s) {
+ nextwith $s.comb
+}
+
+multi first-unique-charakter (+@s) {
+ my %letter := @s.Bag;
+ @s.first: { %letter{$_} == 1 }
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is first-unique-charakter('Perl Weekly Challenge'),'P';
+ is first-unique-charakter('Long Live Perl'),'o';
+ is first-unique-charakter('P'),'P';
+ done-testing;
+}
+
+multi MAIN ($s) {
+ say first-unique-charakter $s
+}
diff --git a/challenge-180/wambash/raku/ch-2.raku b/challenge-180/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..51ad35214e
--- /dev/null
+++ b/challenge-180/wambash/raku/ch-2.raku
@@ -0,0 +1,16 @@
+#!/usr/bin/env raku
+
+sub trim-list ($i, +@n) {
+ @n.grep: * after $i
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is trim-list(3,1,4,2,3,5), (4,5);
+ is trim-list(4,9,0,6,2,3,8,5), (9,6,8,5);
+ done-testing;
+}
+
+multi MAIN ($i, +@n) {
+ put trim-list $i, @n
+}