diff options
| -rw-r--r-- | challenge-029/stuart-little/README | 1 | ||||
| -rwxr-xr-x | challenge-029/stuart-little/raku/ch-1.p6 | 12 | ||||
| -rwxr-xr-x | challenge-029/stuart-little/raku/ch-2.p6 | 10 |
3 files changed, 23 insertions, 0 deletions
diff --git a/challenge-029/stuart-little/README b/challenge-029/stuart-little/README new file mode 100644 index 0000000000..78439907de --- /dev/null +++ b/challenge-029/stuart-little/README @@ -0,0 +1 @@ +Solutions by Stuart Little diff --git a/challenge-029/stuart-little/raku/ch-1.p6 b/challenge-029/stuart-little/raku/ch-1.p6 new file mode 100755 index 0000000000..9a407dfb10 --- /dev/null +++ b/challenge-029/stuart-little/raku/ch-1.p6 @@ -0,0 +1,12 @@ +#!/usr/bin/env perl6 +use v6; + +# run as <script> <quoted string> +# or just <script> to default to the example at https://perlweeklychallenge.org/blog/perl-weekly-challenge-029/ + +for ((@*ARGS) ?? @*ARGS[0] !! 'Perl {Daily,Weekly,Monthly,Yearly} Challenge') +.words +.map({ ($_ ~~ /^\{(.*)\}$/) ?? ($0.Str.split(',')) !! ($_,) }) +.reduce(&infix:<X>).map(*.join(' ')) {.say} + + diff --git a/challenge-029/stuart-little/raku/ch-2.p6 b/challenge-029/stuart-little/raku/ch-2.p6 new file mode 100755 index 0000000000..65be591112 --- /dev/null +++ b/challenge-029/stuart-little/raku/ch-2.p6 @@ -0,0 +1,10 @@ +#!/usr/bin/env perl6 +use v6; + +# run as <script> <string> + +use NativeCall; + +sub c_strlen(Str $str) returns int32 is native('c') is symbol('strlen') {*} + +say c_strlen(@*ARGS[0]); |
