$$reference->[m_emailAddress] #### $$reference->{m_emailAddress} #### $$reference->{m_emailAddress}->[0] #### ${ $$reference->{m_emailAddress} }->[0]->[0] #### use strict; use warnings; sub print_record { my ($rec) = @_; print("username: $rec->{m_username}\n"); print("password: $rec->{m_password}\n"); print("email: @{ $rec->{m_email_addresses} }\n"); } my $stg_username = "PerlMonk"; my $stg_password = "VeryGoodPassword"; my @stg_email_addresses = ( "Monk1", "Monk2", "Monk3" ); my $ellab_rec = { m_username => $stg_username, m_password => $stg_password, m_emailAddress => \@stg_email_addresses, }; print_record($ellb_rec);