Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: phantom subroutine parameter values

by blahblahblah (Priest)
on Apr 15, 2008 at 03:08 UTC ( #680422=note: print w/ replies, xml ) Need Help??


in reply to phantom subroutine parameter values

This will happen when you call a sub with an ampersand but without any parentheses, like the following:

⊂

Doing so makes the calling sub's @_ visible to called subroutine. To avoid this, either omit the ampersand or include empty parens when calling a sub with no args. See perlsub for more info.


Comment on Re: phantom subroutine parameter values
Download Code
Replies are listed 'Best First'.
Re^2: phantom subroutine parameter values
by rpelak (Sexton) on Apr 15, 2008 at 03:53 UTC
    Thanks guys. I knew it was something simple... That explains why a lot of my old code doesn't have ampersands... Sucks be forced to program in tcl for a few years... rpelak
      uh?! it seems a feature! in any case i like calling with the & 'cause i spot easy subroutine's calling.

      if i understand :
      sub refinemydata { my $data = shift; &is_refined:return?&rerefine;}
      could be a valid syntax too ?
      something new

      Lor*
        The ampersand is functional, not decorative. &func(args) is not the same as func(args). The function's prototype is ignored in the former. And &func, &func() and func() are all different. @_ is left untouched by the first.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (15)
As of 2015-07-31 20:03 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 (281 votes), past polls