Just another Perl shrine | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
I'm just attempting to write a module and was wondering if it is bad practise to have subroutines within the module that don't *return* anything? It's actually pretty hard to write a Perl subroutine that doesn't return anything. For example, you might be surprised to learn that your sub returns 1 on success and undef if either of your system calls, open() or close(), fails. Without an explicit return, the sub will return the value of the last expression evaluated. As luck would have it, close() will return 1 if it succeeds, so your sub will too. When you use an empty return statement, the sub will return either undef or an empty list depending on the context in which it was called. Perl only really lets you return nothing when the sub is called in void context (and a return value wouldn't be used anyway.) -sauoq "My two cents aren't worth a dime."; In reply to Re: Bad Module Code
by sauoq
|
|