Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

About this behavior

by chumley (Sexton)
on Apr 16, 2001 at 05:03 UTC ( #72724=note: print w/replies, xml ) Need Help??

in reply to Re: NEWBIE Brain Teaser
in thread NEWBIE Brain Teaser

Thanks for the explanation. I've learned something new about Perl - which isn't too difficult for me!

I'm just wondering why it's set up this way? Is there an overall principle I can apply to lists, arrays, scalars, hashes, etc., that will help me understand behavior like this?

Or perhaps I should go back and finish reading "Learning Perl" instead of picking up little bits here and there as I need them. :-\


Replies are listed 'Best First'.
Re: About this behavior
by Macphisto (Hermit) on Apr 16, 2001 at 05:45 UTC
    Well, and someone please correct me if I mislead on this post,

    If you think about the code:
    foreach $each (@list) {
    $each *= 2;
    $newlist$i = $each;

    From Programming Perl: Note that the loop variable becomes a reference to the element itself, rather than a copy of the element. Hence, modifying the loop variable will modify the original array.

    The snippet loops through the contents of @list and as each cell gets looked at, it is assigned to $each. $each is then modified by multiplying by 2. Modifying $each, modifies the value in the shell, due to the way foreach is constructed in perl. I believe that is all correct. If I have made any mistakes ( other than grammar, and spelling ), someone please tell me.

    Macphisto the I.T. Ninja

    Everyone has their demons....

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (5)
As of 2022-01-18 08:42 GMT
Find Nodes?
    Voting Booth?
    In 2022, my preferred method to securely store passwords is:

    Results (52 votes). Check out past polls.