[Cython] Another CEP: Parallel block

Stefan Behnel stefan_ml at behnel.de
Tue Apr 5 11:01:02 CEST 2011


mark florisson, 05.04.2011 10:44:
> On 5 April 2011 10:34, Stefan Behnel wrote:
>> mark florisson, 05.04.2011 10:26:
>>>
>>> On 5 April 2011 09:21, Dag Sverre Seljebotn wrote:
>>>>
>>>> Justification for Cython-specific syntax: This is something that is
>>>> really
>>>> only useful if you can release the GIL *outside* of the loop. So I feel
>>>> this
>>>> is an area where a custom Cython solution is natural, sort of like "cdef
>>>> extern", and the buffer access.
>>>>
>>>> Since a similar pure-Python solution is rather useless, I also think
>>>> there's
>>>> less incentive for making something that works well in pure-Python mode.
>>>
>>> Which feature is Cython specific here? The 'with a, b as c:' thing?
>>
>> No, the syntax is just Python. It's the scoping that's Cython specific,
>> including the local variable declarations inside of the "with" block.
>
> Hmm, but you can use cython.declare() for that, no?

cython.declare() is a no-op (or just a plain assignment) in Python. But the 
thread-local scoping of these variables cannot be emulated in Python. So 
this would be a feature that cannot be used in pure Python mode, unlike 
closures.

Stefan


More information about the cython-devel mailing list