in reply to Re^2: RFC: pragma pragmatic
in thread RFC: pragma pragmatic

  1. If you put X inside curlies, it is no longer at global (file) scope. NSS!
  2. Requiring say to be enabled is about backwards compatibility; making that lexical, is not.

Pointless pedantry, and wrong on all counts. (You and sundial should team up, that'd be really entertaining.)


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority". The enemy of (IT) success is complexity.
In the absence of evidence, opinion is indistinguishable from prejudice. Suck that fhit

Replies are listed 'Best First'.
Re^4: RFC: pragma pragmatic
by ikegami (Patriarch) on Aug 13, 2017 at 04:15 UTC

    Requiring say to be enabled is about backwards compatibility; making that lexical, is not.

    That's not true. Limiting the scope of use feature is required to enable backwards compatibility. If the effect of use feature qw( say ); was global, the following would break:

    # script.pl use feature qw( say ); use Module; say Module::foo();
    # Module.pm package Module; sub say { "I say \"$_[0]\""; ) sub foo { say "Hi!"; } 1;

    If you put X inside curlies, it is no longer at global (file) scope.

    It's never globally scoped; it's always lexically scoped.