in reply to last index of array ref...
@array vs @{$arrayref} $array[0] vs ${$arrayref}[0] $#array vs $#{$arrayref} [download]
It's definitely consistent. I don't see the problem.