in reply to Sorting array, getting modification of read-only value error

I suspect autovivification.

Minimal example:

use strict; use warnings; my @sorted = sort { $a->[1] <=> $b->[1] } (undef, undef, undef);
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Replies are listed 'Best First'.
Re^2: Sorting array, getting modification of read-only value error
by myelinviolin (Novice) on Nov 28, 2012 at 19:40 UTC
    I think I get what you are trying to say, but I can print out the array with no problems, so the whole thing should be defined, correct? So I am not sure how I would go about fixing this.

      You can print out undefined values. (Though if you have warnings enabled, that kind of behaviour will earn you one.)

      I'm not entirely sure how you'd fix it. Some self-contained code which doesn't rely on files from your system that I don't have on my computer might help.

      perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'