in reply to Variable number of foreach loops

List::MapMulti should do the trick.

mapm { my ($i1, $i2, $i3) = @_; ...; } \(@_a_1, @_a_2, @_a_3);
use Moops; class Cow :rw { has name => (default => 'Ermintrude') }; say Cow->new->name