Yeah. I tend to use it more often then I don't. It makes the code more readable if you explicitly state what you are returning. But if my routine only returns an error state or the return value is irrelevant then I don't use return. (Its not like Perl knows about void functions)
As a matter of "good programming practice", I always state an explicit return, like "return 1;", or "return $status_code;" to make it easier for the programmers that will follow on from me.
As well, when a subroutine is performing a task with a number of tests - say a data validation exercise - having a return after each failure avoids incredible messy code.
Ken
my $txt2print = MySub('This text')
or warn('MySub said 0');
print $txt2print;
sub MySub {
my $txt = shift;
$txt = { do something here }
or return(0);
return($txt);
}