in reply to Concatenating strings with tabs between and returning the result

Why not simply use join which takes care of most of what you want? Btw, $string1 and co are useless names for variables. The names should describe what is supposed to be in the variable. my $concatstring = join "\t", $string1, $string2, $string3; To take care of adding another tab for short strings, use map:
my $concatstring = join "\t", map length() < 8 ? "$_\t" : $_, $string1, $string2, $string3;
But just to answer your question on how to return the result: quite coincidentally :), you can do that using return.

Makeshifts last the longest.