[Python-Dev] nonlocal keyword in 2.x?

M.-A. Lemburg mal at egenix.com
Tue Nov 3 20:15:54 CET 2009


"Martin v. Löwis" wrote:
>>> 2.7 has an up-to-date backport of the C IO lib (as well as the memoryview
>>> object), which means it is better for people wanting to ease transition to 3.x.
>>>
>>> But of course, as Martin said, few people will want to support 2.7 only and not 
>>> 2.6.
>>
>> Since 2.7 will be closer to 3.2 than 2.6, the result will more likely
>> be: many people will want to support 2.7 and 3.x - which is really
>> what we should be after.
> 
> Supporting 2.7 doesn't mean that you have to use the nonlocal keyword
> (nor does support for 3.2 require that keyword). So I'm not sure how
> the backport of a feature to 2.x could encourage people to forward-port
> to 3.x.

True. This particular backport is not all that useful - it is well
possible to write code that doesn't need the feature, both in 2.7 and
3.2.

However, if a 3.2 feature is required for code to work out of the
box without changes, then I'd regard such a feature as potential
backport candidate.

memoryviews are a good example. In 3.x the buffer object is gone
and memoryviews are the new replacement for it.

Code written to support both 2.7 and 3.2 would need to have
access to these memoryviews in order to avoid having to
write special support for buffer objects (for 2.7) and
memoryviews (for 3.x).

By backporting memoryviews to 2.7, users no longer have to
write support code for buffer objects and that makes things
easier for them.

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Nov 03 2009)
>>> Python/Zope Consulting and Support ...        http://www.egenix.com/
>>> mxODBC.Zope.Database.Adapter ...             http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ...        http://python.egenix.com/
________________________________________________________________________

::: Try our new mxODBC.Connect Python Database Interface for free ! ::::


   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
    D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
           Registered at Amtsgericht Duesseldorf: HRB 46611
               http://www.egenix.com/company/contact/


More information about the Python-Dev mailing list