The normal idea is to have an hash table, iterate over the array and using the elements as keys.
Something like :
Lets simplify the loop 
But do we need the loop? 
And throwing away the hash defeniton. 
I love this one line in Perl.
Something like :

Code: PERL
my @array = (1,5,3,7,9,1,4,5,7,6,7);
my %hash;
foreach my $element (@array) {
$hash{$element}++
}
my @arrayNoRep = keys %hash;
print join(", ", @arrayNoRep);

Code: PERL
my @array = (1,5,3,7,9,1,4,5,7,6,7);
my %hash;
$hash{$_}++ foreach @array;
my @arrayNoRep = keys %hash;
print join(", ", @arrayNoRep);

Code: PERL
my @array = (1,5,3,7,9,1,4,5,7,6,7);
my %hash;
@hash{@array} = ();
my @arrayNoRep = keys %hash;
print join(", ", @arrayNoRep);

Code: =PERL
my @array = (1,5,3,7,9,1,4,5,7,6,7);
my @arrayNoRep = keys %{{map {$_=>0} @array}};
print join(", ", @arrayNoRep);


