use strict; use warnings; use Data::Dump; my %x = ( a => "red"); my %y = ( b => "green"); my %z = ( c => "black"); sub modfifyHash { my ($x, $y, $z) = @_; $x->{a} = "circle"; $y->{b} = "square"; $z->{c} = "rectangle"; return; } dd \(%x, %y, %z); modfifyHash( \(%x, %y, %z) ); dd \(%x, %y, %z); #### ({ a => "red" }, { b => "green" }, { c => "black" }) ({ a => "circle" }, { b => "square" }, { c => "rectangle" })