Steve Howell wrote:
> --- John Nagle <[EMAIL PROTECTED]> wrote:
> 
>>With this, the heavy optimizations are possible. 
>>Strength reduction.  Hoisting
>>common subexpressious out of loops.  Hoisting
>>reference count updates out of
>>loops.  Keeping frequently used variables in
>>registers.  And elimination of
>>many unnecessary dictionary lookups.
>>
> To the extent that some of these optimizations could
> be achieved by writing better Python code, it would
> nice for optimization tools to have a "suggest" mode. 
> For example, if I code a Fourier series and duplicate
> the subexpression n*f*t, it would be nice for a tool
> to tell me that I should refactor that expression. 
> Something like this:
> 
>    n*f*t should be refactored out of this expression,
> assuming muliplication has no desired side effects for
> n, f, and t.

      Too labor-intensive.  These are well understood optimizations
that can be done quite well automatically.  The problem is Python's
gratutious dynamism - it's hard to tell, when examining code, if
something can be patched by other code elsewhere.  Where "setattr"
is allowed, the compiler has to assume side effects almost everywhere.

                                John Nagle
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to