@array[0,2,6]
(или более обобщенно @array[ EXPR ]
) - это фрагмент массива .(См. perldata ). Выражение индекса оценивается в контексте списка, возвращаемый список считается списком индексов, а элементы, идентифицированные этими индексами, возвращаются срезом.
$array[ EXPR ]
является элементом массива .Выражение индекса оценивается в скалярном контексте, возвращаемое значение принимается за индекс, и возвращается элемент, идентифицированный этим индексом.
Код 3,4
оценивается как 4
в скалярном контекстеоператор запятой в perlop , поэтому $array[3,4]
совпадает с $array[4]
за исключением предупреждения о пустом контексте.