http://www.perlmonks.org?node_id=992840


in reply to What is $x{$y}?

Like it was said above, it is a dereference because a hash only holds scalar values which could be references to an array, hash, or another scalar.. any reference. $x{$y} grabs the reference which is your scalar that you must dereference to make sense out of it.

Just like my $ref = \@ary; creates a reference to the array and the way you would dereference it would be either @$ref or @{$ref}. In the case of a complex variable such as $x{$y} it is probably easier and more readable (once you get used to it) to use surrounding curly braces.