#!/usr/bin/perl
my @array = qw[ foo bar baz bar foo baz baz bad ];
sub dedupe
{
${_}=do{{},[],{}};@{${_}}{@_,%_,@_}=$|;keys%{\%{${_}}}
}
print dedupe(@array);
Snippets of code should be wrapped in
<code> tags not<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).