A problem I see with this is that it's hard for the compiler to know what's a "useless" assignment -- especially with a language as extensible as perl. For example, what if the variable is tied? An assignment that looks useless may do quite a bit. Of course, you could tell the compiler "optimize it away unless it's tied" but there may be other examples where it's hard/impossible to tell. Although I doubt anyone uses perl for embedded work, this sort of thing is definitely an issue for C where a variable might really be a hardware register so an assignment isn't useless at all and is probably necessary. Can anyone think of a perl example other than a tied variable?
in reply to Will Perl 6 optimize away useless assignments?