Well for the same reason as my example, the inner sub is only applied once, so only the second sub is a redefinition.
I didn't find where the fact that a given definition of a sub (except anonymous of course) will only be applied once, no matter how often the scope of its definition is entered (actually I don't think the place where a function is defined matters at all, except for namespace and during compilation), but Lexical Subroutines explains how to create what you might expect (lexically scoped function, with redefinition each time), and so implies that the normal behaviour is different.
In reply to Re^3: Array ending up empty when processing more than a single file
by Eily
in thread Array ending up empty when processing more than a single file
by TJCooper
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |