Is there a difference between a subroutine that does
return;
and one that does?
return undef;
I think I still agree with PBP though.
1) You should avoid nesting function calls:
my $result = bar(); foo(1, $result, 2);
2) You should always be explicit (when doing "complicated" things):
foo(1, scalar bar(), 2);