Unless the declaration of some_subroutine was moved up, there would be a warning about an undefined subroutine. The assignment runs after the declaration (which happens on compile-time) and so no warning.
if the code were using anonymous subroutines as in
my $coderef = sub {
#...do something with @_...
return ($value1, $value2);
};