[Python-Dev] pyc files, constant folding and borderline portability issues
Cesare Di Mauro
cesare.dimauro at a-tono.com
Tue Apr 7 18:46:29 CEST 2009
On Tue, Apr 7, 2009 06:25PM, Guido van Rossum wrote:
> Well I'm sorry Cesare but this is unacceptable. As Skip points out
> there is plenty of code that relies on this.
Guido, as I already said, in the final code the normal Python behaviour
will be kept, and the stricter one will be enabled solely due to a flag
set by the user.
> Also, consider what
> "problem" you are trying to solve here. What is the benefit to the
> user of moving this error to compile time? I cannot see any.
In my experience it's better to discover a bug at compile time rather than
at running time.
> On Tue, Apr 7, 2009 at 8:19 AM, Cesare Di Mauro
> <cesare.dimauro at a-tono.com> wrote:
>> In data 07 aprile 2009 alle ore 17:19:25, <skip at pobox.com> ha scritto:
>>> Cesare> The only difference at this time is regards invalid
>>> Cesare> which will raise exceptions at compile time, not at running
>>> Cesare> time.
>>> Cesare> So if you write:
>>> Cesare> a = 1 / 0
>>> Cesare> an exception will be raised at compile time.
>>> I think I have to call *bzzzzt* here. This is a common technique used
>>> during debugging. Insert a 1/0 to force an exception (possibly causing
>>> running program to drop into pdb). I think you have to leave that in.
>> Many tests rely on this, and I have changed them from something like:
>> 1 / 0
>> a = 1; a / 0
>> But I know that it's a major source of incompatibilities, and in the
>> code I'll enabled it only if user demanded it (through a flag).
>> Python-Dev mailing list
>> Python-Dev at python.org
> --Guido van Rossum (home page: http://www.python.org/~guido/)
More information about the Python-Dev