Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

my @ARGV

by szabgab (Priest)
on Dec 08, 2008 at 20:30 UTC ( #729032=note: print w/replies, xml ) Need Help??


in reply to Little annoying mistakes ... of others

Peter Scott suggested on Perl 5 Porters to warn if a user tries to declare my @ARGV as currently it just silently hides the real @ARGV.

There are some more issues in that thread on the mailing list.

Replies are listed 'Best First'.
Re: my @ARGV
by ikegami (Pope) on Dec 08, 2008 at 21:12 UTC
    So does my $_; and my $var;. Is there a case where my doesn't create a new variable?
      my $_ is new with 5.10.0, and switches anything in the scope that by default is using the global $_ to using the lexical $_ instead.

      my @ARGV has no such magic. readline or eof will continue to default to using the global @ARGV, even though there's a lexical @ARGV in scope. This is the reason for a warning.

        My point is that I am looking for cases of Perl code that compile under use strict. Don't generate warnings under use warnings but don't do the expected by a beginner.

        After being told to use strict and declare everything with my, a beginner will go out and do just that. Declare everything with my:

        my (@ARGV, $a, $b, $_, $AUTOLOAD);
        you could give them a list of special cases but IMHO it is a waste of brain cycles - at that point in the learning curve. Probably they will not learn them and the whole thing will just confuse them.

        My plan is to provide a tool that can find such cases and warn about them.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://729032]
help
Chatterbox?
[marto]: last time it was IE6 clients, now they're on 11, so more scope there also, in terms of UI and playback
[marto]: in house as in Company network, not internet connected (power stations and the corporate HQs)
[Discipulus]: new Monsignor party! free beverages and pizza for all you monks! and a big thanks for the patience you deserved me during these years
[marto]: congrats Discipulus
[Discipulus]: only 4k points to sundial's level ..;=)
[Corion]: Yay Discipulus ;)
[Corion]: marto: Ah, so this will be training videos etc., cool!
[choroba]: Congratulations!
[marto]: Corion worse, some plant inspection, cameras moving thru pipes
[marto]: Discipulus yeah, just don't adopt his tactics :P

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (11)
As of 2017-07-28 09:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I came, I saw, I ...
























    Results (425 votes). Check out past polls.