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


in reply to Mini-Tutorial: Dereferencing Syntax

It's also worth noting that the following are two completely different things.

@hash{'key1', 'key2'} $hash{'key1', 'key2'}

The first one is basically a shorthand for:

($hash{'key1'}, $hash{'key2'})

The second one is:

$hash{join($;, 'key1', 'key2')}

... where $; is the subscript separator, which defaults to \034.

perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'