use Date::Manip qw(ParseDate Date_Cmp); sub sortDate { my($date1, $date2); $date1 = &ParseDate($a); $date2 = &ParseDate($b); return (&Date_Cmp($date1,$date2)); } my @dates = ("Fri 16 Aug 96", "Mon 19 Aug 96", "Thu 15 Aug 96"); my @i = sort &sortDate @dates;