in reply to Seemingly enigmatic data structures

You get anonymous arrays with one element each. The following two do the same.
print $staff[0][0]{age}, "\n"; print $staff[0]->[0]->{age}, "\n";