Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re(2): while(<>) { ... } considered harmful

by FoxtrotUniform (Prior)
on Sep 08, 2002 at 01:24 UTC ( #195951=note: print w/ replies, xml ) Need Help??


in reply to Re: while(<>) { ... } considered harmful
in thread while(<>) { ... } considered harmful

      map { require Net::DNS } 1;
    Is that a map in void context? Nasty and evil.

I believe that's a minimal demonstration of a bug, rather than "real" code.

On the subject of while(<>) vs. while(my $line = <>), I tend to prefer the former:

  • If I don't have to do much processing for each line, it's usually much nicer to work on $_, as Juerd points out.
  • If I do have a lot of work to do, it's usually in a subroutine call, where this sort of thing isn't an issue (since the scope has changed).

I haven't really thought about it, but if a loop's so complex that you have to assign to an explicit iterator variable just to figure out what's going on (as opposed to a loop where defaulting to $_ would be inappropriate for other reasons), it's probably an indication that the loop needs simplifying.

--
F o x t r o t U n i f o r m
Found a typo in this node? /msg me
The hell with paco, vote for Erudil!


Comment on Re(2): while(<>) { ... } considered harmful
Select or Download Code
Replies are listed 'Best First'.
Re: Re(2): while(<>) { ... } considered harmful
by IlyaM (Parson) on Sep 08, 2002 at 19:28 UTC
    I believe that's a minimal demonstration of a bug, rather than "real" code.

    You are right. Real code looks like:

    my @other_connectors = map $ad_obj->connector(field => $_), qw(header description region country state);
    No require on the surface. It was deeply hidden in one of method calls. I though it was just a Perl bug when I got that error for first time.

    --
    Ilya Martynov (http://martynov.org/)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://195951]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (13)
As of 2015-07-31 16:33 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (279 votes), past polls