[Python-Dev] python compiler

Maciej Fijalkowski fijall at gmail.com
Mon Apr 5 22:11:33 CEST 2010


On Mon, Apr 5, 2010 at 1:47 PM, Craig Citro <craigcitro at gmail.com> wrote:
>> There has been some contentious debate about this in the past, where a
>> Cython developer(s?) insisted Cython be listed among the "Python
>> implementations" somewhere, on a par with IronPython, Jython and PyPy.
>> This does not seem the right place to list Cython to me. (Much though
>> I admire Cython's accomplishments!)
>>
>> Insofar as the OP asked about "a compiler for Python" and you pointed
>> to Cython as an example, your post could easily be misunderstood as an
>> attempt to reopen that debate.
>>
>
> Ahh. Well, I can't speak for the rest of the Cython folks, but let me
> say: I agree, Cython can't stand on its own without CPython, and there
> are a ton of other things I'm personally interested in doing long
> before we try to change that. Sorry if I was accidentally fanning any
> dying embers. :)
>
>> Beign able to access call frames via tracebacks is certainly part of
>> the standard semantics, and a proper Python implementation should go
>> through great lengths to get this interface right (as IronPython,
>> Jython and PyPy indeed do).
>>
>
> Is the requirement just the construction of full tracebacks in the
> event of an exception? Because Cython does that right now. In the
> event of an exception, the Python call frames are constructed as the C
> call stack is unwound. I thought Maciej was suggesting that having
> full Python frames for any Python call was part of the semantics,
> which is what we only do in the case of a profiling run. I'm really
> not trying to belabor the point -- but if there's something Cython
> should be doing and isn't, it's always good to hear about it. (Feel
> free to point me to an appropriate section of the docs ...)
>

However those frames are not completely like Python frames - they
don't let you look into locals for example. It's a cool feature though
that it exists at all, I did not know that.

Cheers,
fijal


More information about the Python-Dev mailing list