On Friday, June 7, 2002, at 06:05 , Michael Fowler wrote:
> On Fri, Jun 07, 2002 at 05:30:17PM -0700, Bryan R Harris wrote:
>>
>> Quick question:
>>
>> When exactly are {} braces required? I notice when following references,
>> $ { $var } and $$var both work identically. Do you ever actually need
>> them?
>
> I'm assuming you meant in the context of dereferencing only. Braces aren'
> t
> really required, unless you want Perl to do what you want it to. :)
>
> The braces serve to disambiguate what you're dereferencing.
the general rule of thumb seems to be:
if you are not sure which you meant
then curl them up.
you can actually do
${varname}
so that when you do
print "${varname}1\n";
one disambiguates that it is the stuff in $varname rather
than the stuff in $varname1 ....
remember the recent fumble of
@{$hash{$key}}
since someone had put in
$hash{$key} = [ @val ];
and one really wanted to pull out the correct 'array' and not
that annoying ARRAY{<someHex>}
Bryan you may want to peek at:
http://www.wetware.com/drieux/pbl/perlTrick/HashGames.txt
since I think perl like:
@T_MODULES{@{$T_MODULES{N}}} = ([qw(A B C D E F)]) x 3;
may be about as densely packed as one would want to do without
thinking about restructuring one's core data model.
ciao
drieux
---
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]