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. No, braces are not required with $$var, because there is only one way that can be read. Braces are required when trying to dereference, for example, an array element: @foo = (\1, \2, \3); print ${ $foo[0] }; If you omitted the braces: $$foo[0] You'd effectively be saying "retrieve the 0th element of the array reference $foo", instead of what you meant "retrieve the 0th element of @foo and dereference it". This may be a perfectly legitimate action, except that's not what you intended. I can't really put it in terms of a hard and fast rule. Perhaps another on this list can. Michael -- Administrator www.shoebox.net Programmer, System Administrator www.gallanttech.com -- -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]