@raiph: Очень полезная информация! Я не осознавал, что привязывать символ без знака к контейнеру Скалара было сомнительной практикой, но я рад это слышать. Ранее я был смущен и встревожен в конце концов концепцией символа без сигил, который никогда не может быть восстановлен после инициализации, но которому можно было многократно присваивать новые значения путем привязки к контейнеру Scalar. Все это имеет гораздо больше смысла, когда мы думаем о символах без сигил как о символах, а не переменных.
ытке лучше понять переменные без сигил и как они отличаются от$
я обнаружил, что в отличие от переменных$
Переменные с сигилами, переменные без сигилов не могут быть восстановлены после их инициализации:
my $a = 42;
my $b := $a;
$b := 42; # No exception generated
my \c := $a;
c := 42; # OUTPUT: «Cannot use bind operator with this left-hand side»
Это по замыслу? Если да, то есть ли цель или выгода запретить повторное связывание переменных без сигилов, когда$
переменные с сигилом не запрещены?