http://qs321.pair.com?node_id=11124294


in reply to Re^3: A short whishlist of Perl5 improvements leaping to Perl7
in thread A short whishlist of Perl5 improvements leaping to Perl7

let's try a proposal as thought experiment and discuss it


short version:*


1. Any assignment to an undeclared new variable implies a "implicit" my when in

2. explicit my are still optionally allowed, our and state keep their semantics

3. No hoisting, a variable accessed before an implicit my still belongs to the upper scope and needs to be declared there

4. loop-bodies and naked blocks (technically the same) follow the old rules

5. ( ??? ) nested/anonymous subs are tricky, when it comes to closed over vars

6. ( ??? ) functional blocks like in map {BLOCK} are technically anonymous subs ° 7. ( ??? ) class-variables are a current issue in proposed new OOP models.

8. special global vars are exempt from implicit my.

9. Last but not least automine activates strict

So ...

Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery

°) actually not in the case of map and grep but for all of List::Util , try return to see the difference

*) updated