use MONKEY-SEE-NO-EVAL;
my $r = 'a(\w)c';
my %rxs;
EVAL '%rxs<r> = '~"/$r/";
say "abc" ~~ %rxs<r>;
my $s = "make a be 1";
my $r2 = 'make\s(<[\w\-]>+)\sbe\s(\N+)';
my $m = 'my \$$0 = my \\\\$0 = $1;';
EVAL '$s ~~ s:g' ~ "/$r2/$m/";
say $s;
say "abcdef".match(/b(.)d/)[0].Str;
say "abcdef"[/b(.)d/]