good chemistry is complicated, and a little bit messy -LW |
|
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
That function isn't very graceful, especially with that repetitive shifting and data duplication. Here's how you could rewrite it:
Maybe it's just me, but I find reading function arguments with shift is usually pointless since you can just declare the works in a single line. It's also nice to have the function argument declaration in a similar format to how you call it, so you can see if things match up. As of Perl 5.6 or thereabouts, you can open a filehandle that is put into a scalar (glob reference) using the open function: Or, of course, there is always IO::File: These filehandles are a lot easier to pass back and forth than the regular globs. If you're even thinking about using them as function arguments, don't use globs. As a note: ${$foo} and $$foo are equivalent. It's often simpler to just leave off the extra braces since they don't serve any practical purpose. There are occasions like ${$foo->{bar}} where they more appropriate. In reply to Re: Learning to *really* love references
by tadman
|
|