Well, this works under use strict. I create a named array containing a named hash of anonymous hashes of anonymous arrays of anonymous and named subroutine references. I think I got everything you said :-)
#!/usr/bin/perl
use strict;
use Data::Dumper;
local $\ = "\n";
my %namedHash = (
'anon hash1' => {
'anon array1' => [
sub { print 'anon sub1'},
\&test1,
\&test2
],
'anon array2' => [
sub { print 'anon sub2';},
\&test1,
\&test3
],
},
'anon hash2' => {
'anon array1' => [
sub { print 'anon sub1'},
\&test1,
\&test2
],
'anon array2' => [
sub { print 'anon sub2'},
\&test1,
\&test3
],
},
);
my @namedArray = ( \%namedHash );
print Dumper(\@namedArray);
exit;
sub test1 {
print 'sub test1';
};
sub test2 {
print 'sub test2';
};
sub test3 {
print 'sub test3';
};