From 1e3daa9a29a5e6d39b95e526a360ca89c344aa56 Mon Sep 17 00:00:00 2001 From: Scimon Date: Mon, 5 Jun 2023 11:12:04 +0100 Subject: Part 1 (Yup. I'm back) --- challenge-220/simon-proctor/raku/ch-1.raku | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 challenge-220/simon-proctor/raku/ch-1.raku diff --git a/challenge-220/simon-proctor/raku/ch-1.raku b/challenge-220/simon-proctor/raku/ch-1.raku new file mode 100644 index 0000000000..c6043d4548 --- /dev/null +++ b/challenge-220/simon-proctor/raku/ch-1.raku @@ -0,0 +1,16 @@ +#!/usr/bin/env raku + +#| Given a list of words return a list of letters that appear in all of them +multi sub MAIN( *@words ) { + found-letters(@words).join(' ').say; +} + +multi sub MAIN('TEST') { + use Test; + is found-letters( 'Perl', 'Rust', 'Raku' ), ('r'); + is found-letters( 'love', 'live', 'leave' ), ('e','l','v'); +} + +sub found-letters ( *@words ) { + ( [∩] @words.map( *.fc.comb ) ).keys.sort; +} -- cgit