$n = scalar(@aliased); $a = $_ + rand @aliased - $_ # original code = i + rand($n-i) # which becomes.... = i + choiceof(0, 1, ..., $n-i-1) # perl's rand(10) dumps 0-9 inclusive = random integer such that i <= j <= i+$n-i-1 = random integer such that i <= j <= $n-1 = random integer such that i <= j < $n