Az egyszerű esetek, amikor egy egyszerű struktúrát szeretnénk használni:
$ketto = $$scalarref;
print ,,A program neve:'',$$arrayref[0],,,\n'';
print ,,HOME='',$$hashref{'HOME'};
&$coderef(1,2,3);
Persze lehet mutatni mutatóra is:
$refrefref = \\\,,valami''; print $$$$refrefref;
Bármilyen hely, ahol egy referenciát kapnánk meg, helyettesíthető egy blokkal, amely értéke a referencia lesz:
$ketto = ${$scalarref};
print ,,A program neve:'',${$arrayref}[0],,,\n'';
print ,,HOME='',${$hashref}{'HOME'};
&\{$coderef}(1,2,3);
No persze a blokk lehet bonyolultabb is:
&{$inditas{$index} }(1,2,3);	# megfelelő eljárás indul
$$hashref{,,KEY''} = ,,VALUE'';	# 1. eset
${$hashref}{,,KEY''} = ,,VALUE'';	# 2. eset
${$hashref{,,KEY''}} = ,,VALUE'';	# 3. eset
${$hashref->{,,KEY''}} = ,,VALUE'';	# 4. eset
Itt az 1. és 2., illetve a 3. és 4. eset egyenértékű. A fenti esetek egyszerűsítésére szolgál a -> operátor:
print ,,A program neve:'',$arrayref->[0],,,\n'';
print ,,HOME='',$hashref->{'HOME'};
Ennek balértéke bármilyen kifejezés lehet, amely egy referenciát ad vissza. Ez az operátor el is hagyható {} vagy [] zárójelek között (de tényleg csak közöttük!):
$array[$x]->{,,valami''}->[0] = ,,január'';
$array[$x]{,,valami''}[0] = ,,január'';
Ezzel el is jutottunk a többdimenziós C-beli tömbökhöz:
$tomb[42][4][2] += 42;