use Data::Dumper; use strict; my $nested_array_ref = [ '', [ 'a', [ 'b', 'c' ], '', 'd' ], 'value' ]; my @flattened_array = flatten($nested_array_ref); print Dumper(\@flattened_array);