aboutsummaryrefslogtreecommitdiff
path: root/challenge-069/arne-sommer/raku/01-string-smart
blob: 048f982d6865b1a413930d8b4baf80ef4afec2da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#! /usr/bin/env raku

unit sub MAIN ($limit = 30);

sub switch ($string)
{
  return $string.comb.map({ $_ eq "1" ?? 0 !! 1 }).join;
}

my $string01 := gather
{
  my $prev = "";

  loop
  {
    take $prev;
    $prev = $prev ~ 0 ~ switch($prev.flip);
  }
}

say "S$_ = \"{ $string01[$_] }\"" for 0..$limit;