in reply to Push to array as part of Struct

I guess you're working with Class::Struct.

You don't show enough code so I can't tell you directly what to do, but I was able to create an array of the structures and populate an array reference inside:

#!/usr/bin/perl use warnings; use strict; use Class::Struct; use Data::Dumper; struct(Scale => { name => '$', offset => '$', foo => '$', index => '$', chords => '@', notes => '@' }); my @scales = map 'Scale'->new, 1 .. 5; push @{ $scales[0]->chords }, 'Ami'; print Dumper \@scales;

Beginning of the output:

$VAR1 = [ bless( { 'Scale::foo' => undef, 'Scale::chords' => [ 'Ami' ], 'Scale::notes' => [], 'Scale::offset' => undef, 'Scale::name' => undef, 'Scale::index' => undef }, 'Scale' ), bless( { ...

Update: Fixed the code example.

map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]