Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

Re^3: (CLPM) reorder via swap

by o0lit3 (Friar)
on Aug 18, 2004 at 14:54 UTC ( #383984=note: print w/replies, xml ) Need Help??

in reply to Re^2: (CLPM) reorder via swap
in thread (CLPM) reorder via swap

Beautiful and elegant... it's simplicity like this that always reminds me why I love this language.

But please help me out a little. What is the + operator doing here? I know that @{+pop} is somehow saying the same as @{pop()}, but I'm not sure why. ...And while I'm on the subject, why am I not allowed to simply say @{pop} (besides the fact that I've used a split infinitve)?

Replies are listed 'Best First'.
Re^4: (CLPM) reorder via swap
by japhy (Canon) on Aug 18, 2004 at 14:58 UTC
    When you say @{bareword}, Perl doesn't do anything to the bareword, and thinks you're just enclosing the variable name in braces. The reason this is useful is when you're printing something like "the ${n}th time", where you want $n, not $nth.

    The + here disambiguates things; it tells Perl that this is not just a "roped-off" variable name, it's an expression to be evaluated.

    Jeff japhy Pinyan, P.L., P.M., P.O.D, X.S.: Perl, regex, and perl hacker
    How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (3)
As of 2023-05-27 23:47 GMT
Find Nodes?
    Voting Booth?

    No recent polls found