Yes, exactly. $#array is the last subscript while scalar(@array) is the actual length. Hence, using $#array as the last index in a for loop to loop through the array. I know some people prefer other styles, but I find that this keeps things very very explicit.
Forget that fear of gravity,
Get a little savagery in your life.
Comment on Re^2: Mixing up indices in multidimensional hash