Question 1 

my @morse = qw(
  .- -... -.-. -.. . ..-. --. .... .. .--- -.- .-.. -- -.
  --- .--.  --.- .-. ... - ..- ...- .-- -..- -.-- --..
);

my $text = "The eight letter secret token is $token ...";

$text = uc($text);
$text =~ s{([A-Z])}{$morse[ord($1) - ord('A')] . ' '}ge;
$text =~ s{[.]}{Dit}g;
$text =~ s{[-]}{Dah}g;