in reply to meaning of '@' sigil on a hash?

'@': You are enforcing an order on a hash, effectively making it a list. So now you get to treat it as a list.
'$': Ordinary hash lookup gets one element of a hash which you get to treat like a scalar.