in reply to Re^2: A question of perlish elegance on array loop
in thread A question of perlish elegance on array loop

nicely convoluted code :)
now if there's no other reason....
foreach(@{$self->{endpoints}}){ my $wheel = $self->{endpoints}->[$_]{wheels}; my $pname = $self->{endpoints}->[$_]; if($wheel->ID == $wheel_id){
or some such
or in general, if you find yourself accessing separate arrays/hashes with same index, it's probably a good case for rolling up the structure. data structures change quickly during early development, and these things sneak in when functionality is added.
although there exist sometimes good reasons for keeping the structures separate.
the hardest line to type correctly is: stty erase ^H