[Python-Dev] Catching "return" and "return expr" at compile time

Greg Ward gward@cnri.reston.va.us
Tue, 7 Sep 1999 14:47:40 -0400


On 07 September 1999, Tim Peters said:
> The latter, if for no other reason than that new users should get bludgeoned
> into good practice from their first day.  If something's serious enough to
> trigger a warning, and you insist on doing it anyway, then you should at
> least know enough about Python to be able to find the -W switch <wink>.
> 
> Note that in response to 1,379 distinct complaints about insane Perl
> semantics, TomC's stock answer is that every serious Perl programmer runs
> with -w and "use strict".  He's right!  Every serious Perl programmer does.
> Perl picked the wrong default, letting naive programmers hang themselves
> 1,379 distinct ways by default.

I agree, but I'm only willing to do so publicly because Tim has.  So
does the Perl documentation (ie. Tom C., I assume); from "man perl":

    DIAGNOSTICS
         The -w switch produces some lovely diagnostics.
    [...]
         Did we mention that you should definitely consider using the
         -w switch?

    BUGS
         The -w switch is not mandatory.

D'you think that's a hint?

Obviously, there *must* be a way to turn off warnings, so we can
continue to run our crufty, bug-ridden old code without too many
problems.

Greg S.'s suggestion for being able to customize *which* warnings are
printed is also important.  Much hair was pulled when Perl 5.004 was
released with a whole bunch of new warning messages -- lots of people
had to go back and "fix" working code, or remove the -w switch from
production scripts to clean up the mess on their stderr, etc.  I suspect
most of those people (myself included) were enlightened by the new
warnings, but annoyed by having to go and fix what wasn't necessarily
broken.  A lot of people now recommend using -w only when developing,
and removing it for production use, simply because of the risk of new
warning messages when you upgrade Perl.

        Greg
-- 
Greg Ward - software developer                    gward@cnri.reston.va.us
Corporation for National Research Initiatives    
1895 Preston White Drive                           voice: +1-703-620-8990
Reston, Virginia, USA  20191-5434                    fax: +1-703-620-0913