in reply to Hash dereferencing
... when it is a direct reference it is preceded by a double sigil.
That's to disambiguate between a scalar $ref containing a hash reference and a hash %ref. Think about that for a while and you'll understand.