A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2009-November/093770.html below:

[Python-Dev] PEP 3003 - Python Language Moratorium

[Python-Dev] PEP 3003 - Python Language MoratoriumMichael Foord fuzzyman at voidspace.org.uk
Thu Nov 5 12:38:49 CET 2009
Stefan Behnel wrote:
> Michael Foord, 05.11.2009 11:18:
>   
>> Stefan Behnel wrote:
>>     
>>> We certainly aim for Python compatibility. That's a proclaimed 1.0 goal.
>>>       
>> Right, but I think the main point is that Cython is not an
>> implementation of Python. It uses Python syntax, calling into the Python
>> runtime for many of its features
>>     
>
> It is a Python implementation in the sense that it implements syntax and
> semantics of the Python language, be it through generated C code or by
> calling into the CPython runtime.

Implementing Python by calling into Python does not seem to really be a 
'new implementation'... In that sense Cython is a wrapper not an 
implementation.
>  You could theoretically drop the entire
> interpreter from CPython, and Cython would still work with the remaining
> parts - not that it would be worth the effort on either side...
>
>
>   
>>  and *extending* Python syntax for compilation to C.
>>     
>
> Programmers can decide themselves if they want to statically type
> variables, and they can do so without breaking with Python syntax. It is
> certainly not required to use non-Python syntax to compile Python code, not
> even if you want to get a fast binary module as a result.
>
>   

But you extend the language. Coders can write Python or 'not-Python' (or 
perhaps 'Python plus'). Where you extend the language you are no longer 
implementing Python but a language oriented tool with Python inspired 
syntax intended for use with Python.
>   
>> Obviously a grey area - but if you take Cython code and try to run it on
>> ClassicPython then you are likely to have syntax errors. The same is not
>> true of the other full implementations (although where they use native
>> platform features you may not have the same libraries available - but
>> the language is unchanged).
>>     
>
> To me, the term "Python implementation" just means something that
> implements the Python language. 

Which Cython doesn't - it can parse Python and it calls into Python. It 
doesn't implement runtime features (from the sounds of it).
> That shouldn't prevent it from providing
> additional features. 

Heh. Imagine if Microsoft had taken IronPython and added new syntax, 
that wasn't valid Python, and still tried to claim that IronPython was 
an implementation of Python. Few people would agree...

> Jython can interface with Java code, IronPython can
> interface with .NET code, Cython can interface with C code. Not sure what
> PyPy allows in addition to being a Python implementation, but there surely
> are language features also in PyPy that no other Python implementation
> provides.
>   
No. All of these implementation provide their integration through 
existing language features of Python, not by adding new *language* level 
features.

All the best,

Michael

> Stefan
>
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: http://mail.python.org/mailman/options/python-dev/fuzzyman%40voidspace.org.uk
>   


-- 
http://www.ironpythoninaction.com/

More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4