aboutsummaryrefslogtreecommitdiff
path: root/challenge-142
diff options
context:
space:
mode:
authorJan Krňávek <Jan.Krnavek@gmail.com>2021-12-12 18:59:25 +0100
committerJan Krňávek <Jan.Krnavek@gmail.com>2021-12-12 18:59:25 +0100
commit401dffa417514c3ae82ef0515fa604cd12a1c5bc (patch)
tree7cf0b36575d6edfbbc22db005b7aaa9b7d6e7e57 /challenge-142
parentafe0e37af2d810d218db86d0b44b2493545e8af2 (diff)
downloadperlweeklychallenge-club-401dffa417514c3ae82ef0515fa604cd12a1c5bc.tar.gz
perlweeklychallenge-club-401dffa417514c3ae82ef0515fa604cd12a1c5bc.tar.bz2
perlweeklychallenge-club-401dffa417514c3ae82ef0515fa604cd12a1c5bc.zip
solution week 142
Diffstat (limited to 'challenge-142')
-rw-r--r--challenge-142/wambash/raku/ch-2.raku20
1 files changed, 20 insertions, 0 deletions
diff --git a/challenge-142/wambash/raku/ch-2.raku b/challenge-142/wambash/raku/ch-2.raku
new file mode 100644
index 0000000000..0d44f9e652
--- /dev/null
+++ b/challenge-142/wambash/raku/ch-2.raku
@@ -0,0 +1,20 @@
+#!/usr/bin/env raku
+
+sub sleep-sort (+@n) {
+ my Channel $ch .= new;
+ @n
+ andthen .map: {start {sleep $_/5;$ch.send($_)}}\
+ andthen await $_;
+ $ch .close;
+ $ch.list;
+}
+
+multi MAIN (Bool :test($)!) {
+ use Test;
+ is( sleep-sort($_),(1...10),$_) for (1 .. 10).pick(10) xx 3;
+ done-testing;
+}
+
+multi MAIN (*@n) {
+ say sleep-sort @n
+}