my $aa=x(); foreach(@$aa){ $_.p(); } sub x { my @ret; my $a=mat::Network->new({name=>'test'}); my $b=mat::Network->new({name=>'test2'}); push(@ret,$a); push(@ret,$b); return(\@ret); }