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 | [reply] [Watch: Dir/Any] [d/l] [select] |
No, you can't "just say" that
$foo=$bar;
@foo=@bar;
%foo=%bar;
and
*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 | [reply] [Watch: Dir/Any] [d/l] [select] |