En un script como el siguiente, ¿es posible sin soltar 'my' para declarar efectivamente 'var' una sola vez y tenerlo visible fuera del bloque BEGIN?Declaración de la variable en el bloque BEGIN
echo -e "\n\n\n" | \
perl -lne 'BEGIN { my $var="declared & initialized once" } print $var'
Además, ¿por qué declarar var sin 'my' lo hace visible fuera del bloque BEGIN?
La orden de compilación me desconcierta un poco. Como $ var se declara primero en el bloque BEGIN, ¿por qué no se borra la declaración con 'my' más tarde? –