On Nov 28, 2008, at 1:24 AM, Dag Sverre Seljebotn wrote:

> Robert Bradshaw wrote:
>> On Nov 27, 2008, at 12:46 PM, Dag Sverre Seljebotn wrote:
>>> Proposal: New modifier, "proto". I.e.
>>>
>>> cdef proto int foo(int a, int b):
>>>      cdef int c
>>>      cdef int b
>>>
>>> will embed the signature/variables on a pure
>>>
>>> def foo(a, b): ...
>>>
>>> If the keyword proto is not present, the definition is not allowed
>>> unless it is declared inline.
>>>
>>> Pro:
>>> - Resolve the conflict.
>>> - I think this makes it more obvious what is going on. I think  
>>> having
>>> the pxd definition transfer to a def in the pyx/py is a bit too
>>> magical
>>> using the current syntax anyway, and that this is an improvement,
>>> conflict or not.
>>>
>>> Con:
>>> - Breaks compatability with Cython 0.10 (but through compiler
>>> errors, no
>>> silently changed behaviour).
>>>
>>> What do you think? I could implement it in roughly five minutes if
>>> it is
>>> accepted, the function modifier part of the parser is nice and
>>> dynamic.
>>
>> I'm generally -1 on adding new syntax, but what I had wasn't very
>> clear either. Would it be enough to accept a locals decorator?
>
> That's much better; +1.
>
> Could you do it? You did this so it should be quicker for you. At any
> rate this is now http://trac.cython.org/cython_trac/ticket/143
>
> Note that this may require extending decorator support (in Parsing.py)
> to cdef functions, currently they only support "def" (if you didn't
> change that already). They should all probably simply be let  
> through no
> matter what they decorate, and then disallowed again (except for
> @cython.locals) in PostParse.

Sure, I'll try to get to this (probably next week sometime).

- Robert

_______________________________________________
Cython-dev mailing list
[email protected]
http://codespeak.net/mailman/listinfo/cython-dev

Reply via email to