On Fri, Mar 11, 2005 at 11:02:36PM +0000, Nigel Sandever wrote:
> What would your reaction be to this?
>
> C:\perl-5.8.6\win32>..\perl -mextended -e"say 'hi.'"
> hi.
> 
> C:\perl-5.8.6\win32>..\perl -e"say 'hi.'"
> String found where operator expected at -e line 1, near "say 'hi.'"
>         (Do you need to predeclare say?)
> syntax error at -e line 1, near "say 'hi.'"
> Execution of -e aborted due to compilation errors.

Is extended global?  Lexical? 

What if we want to break another bit of backwards compatibility?  Does that
"feature" get turned on as well when extended is used?  And another?  And
another?  Can we then turn them on selectively?

        perl -Mextended=say,wibble,newsort -e ...

Or maybe we can just get all the incompatible features up to a certain
version

        perl -Mextended=5.10 -e ...

You can see how this opens an enormous can of worms for a "simple" feature.
I would be loathe to open that discussion this late in Perl 5's life.

OTOH if the prototyping system was fixed to allow print-style functions, 
you could write say() as a trivial module and none of this would be a 
problem.

In other words... you're trying to hack around the real problem.

FIX THE PROTOTYPES

Reply via email to