Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re: Re:{3} Eval and $@% ...

by srawls (Friar)
on Jun 19, 2001 at 05:11 UTC ( #89534=note: print w/replies, xml ) Need Help??

in reply to Re:{3} Eval and $@% ...
in thread Eval and $@% ...

Look at perlref. GLOBs are Handles in general, so read them in array context with brackets like I did.

Only when used as a filehandle. For a variable name there is a scalar ($), a list (@), a hash (%), a filehanlde, and a format. Instead of saying:

$foo=$bar; @foo=@bar; %foo=%bar;
you can just say:
*foo = *bar;
So, when you dereference a type glob, you don't add the <foo> unless you are reading from a file handle.

The 15 year old, freshman programmer,
Stephen Rawls

Replies are listed 'Best First'.
Re: Eval and $@% ...
by Abigail (Deacon) on Jun 19, 2001 at 09:56 UTC
    No, you can't "just say" that
    $foo=$bar; @foo=@bar; %foo=%bar;
    *foo = *bar;
    are equivalent. The first set of assignments sets $foo, @foo and %foo from the values of $bar, @bar and %bar, and that's it. If you later assign to $bar or $bar [3], $foo and $foo [3] remain unchanged. However, with the glob assignment, $foo, @foo and %foo become aliases for $bar, @bar and %bar. Modifications of the one are reflected in the other.

    -- Abigail

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://89534]
[LanX]: Novum Testamentum Graece
[erix]: "give us today our bread from tomorrow" -- that's not going to fly
[choroba]: "for tomorrow"
[Discipulus]: Let's perl: from cpan website how can thou/you tell how many namespaces are beyond App::* ?
[choroba]: Map of CPAN
[LanX]: cpan serach?
[Discipulus]: about bred: 'let our bred levitate (well)'
[Discipulus]: I love maps!
[Discipulus]: also App::* works in cpan search, i tried App::

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (6)
As of 2017-11-23 20:53 GMT
Find Nodes?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:

    Results (338 votes). Check out past polls.