The code below should, to me, completely work.
But when I call doesnt_work @r is not initilized. 8(
Which is surpising to me because perl knows that sub doesnt_work exists
so why doesn't it init @r when it is called?
#!/usr/bin/perl -w { my @s=("This works\n"); sub works { shift @s} } #This works.. print &works; # Error!! # This gives an error of Use of uninitialized value in print at .... print &doesnt_work; { my @r=("Should this work..\n"); sub doesnt_work{ pop @r; } }
In reply to Closure question by Pug
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |