Я изучаю Perl с Llama, 6-е изд., и некоторые программы в первых главах не работают с «использовать 5.014», и я не знаю, почему. Например:
#!/usr/bin/perl
#use 5.014;
$n = 1;
while ($n < 10) {
$sum += $n;
$n += 2;
}
print "The total was $sum.\n";
Это работает с закомментированным «использовать 5.014», но с его включением я получаю эти ошибки:
Global symbol "$n" requires explicit package name at ch3loop.pl line 5.
Global symbol "$n" requires explicit package name at ch3loop.pl line 6.
Global symbol "$sum" requires explicit package name at ch3loop.pl line 7.
Global symbol "$n" requires explicit package name at ch3loop.pl line 7.
Global symbol "$n" requires explicit package name at ch3loop.pl line 8.
Global symbol "$sum" requires explicit package name at ch3loop.pl line 10.
Execution of ch3loop.pl aborted due to compilation errors.
Однако, если я поставлю «мой» перед первым экземпляром переменных, он все равно не запустится, но по другой причине:
Global symbol "$sum" requires explicit package name at ch3loop.pl line 10.
Execution of ch3loop.pl aborted due to compilation errors.
Может кто-нибудь объяснить, что происходит? Я знаю, что могу просто запустить это без «использовать 5.014», но на обложке книги написано, что 6-е изд. "покрывает Perl 5.14", так что я озадачен.
Спасибо.