in reply to List or Scalar?

I think this snippet explains your predicament.
>perl -e "$a=[120]; for (-1..@{$a}){print qq($_\n)}; print qq( \$a=$a \@a=@{$a} value=$a->[0]);" OUTPUT: -1 0 1 $a=ARRAY(0x224f44) @a=120 value=120
Note that $a is an array ref, and @a in a print context returns the equivalent of join (' ',@a), which is a single element of 120.

To get your "for" right, you need to use

for(-5..$term->[0])