use constant D50 => [96.42, 100, 82.49]; #### sub D50 () { [96.42, 100, 82.49] } #### use Readonly; Readonly::Array my @D50 => (96.42, 100, 82.49); print $D50[0], "\n"; $D50[0]++; __END__ 96.42 Modification of a read-only value attempted at ... #### BEGIN { my $x = [96.42, 100, 82.49]; *D50 = sub () { $x }; } #### use constant D50 => (96.42, 100, 82.49); #### $ perl -MO=Deparse -e 'use constant X=>[1]; print X->[0]++; print X->[0]++' use constant ('X', [1]); print [1]->[0]++; print [1]->[0]++; $ perl -le 'use constant X=>[1]; print X->[0]++; print X->[0]++' 1 2