#! user/bin/perl use warnings; use strict; my @x = ( [1,1], [2,2], [3,3] ); sub do_something {} # so, I use this method instead foreach my $a1 (@x) { foreach my $a2 (@x) { do_something($a1, $a2); } }