New release 0.19 of the Cython compiler

Stefan Behnel stefan_ml at behnel.de
Fri Apr 19 12:25:37 EDT 2013


I'm happy to announce that Cython 0.19 has been released. This is a feature
release of the Cython compiler that adds some major usability improvements
especially for code that needs to run in both Py2 and Py3, as well as
better Python compatibility and optimisations.

http://cython.org/


You can get it from here:

http://cython.org/release/Cython-0.19.tar.gz

http://cython.org/release/Cython-0.19.zip

Release notes:
https://github.com/cython/cython/blob/29bf3493fdc80cb3261a9dfb9f73e3ccd46fec66/CHANGES.rst

Documentation: http://docs.cython.org/


Major new features in this release:
===========================

* New directives ``c_string_type`` and ``c_string_encoding`` to
  automatically convert between C strings and the different Python
  string types.

* Keyword arguments are supported for cdef functions, including external
  C/C++ library functions.

* New freelist decorator for extension types.

* Fast extension type instantiation using the ``Type.__new__(Type)`` idiom
  has gained support for passing arguments.

* Slicing was optimised for several builtin types and otherwise conforms
  better with Python semantics for user defined types.

* The mapping of dict view/item methods in Python 3 was improved.


What is Cython?
===============

Cython is an optimising static compiler for both the Python programming
language and the extended Cython programming language (based on Pyrex). It
makes writing C extensions for Python as easy as Python itself.

The Cython language is a superset of the Python language that additionally
supports calling C functions and declaring C types on variables and class
attributes. This allows the compiler to generate very efficient C code from
Cython code. The C code is generated once and then compiles with all major
C/C++ compilers in CPython 2.4 and later, including Python 3.x.

All of this makes Cython the ideal language for wrapping external C
libraries, embedding CPython into existing applications, and for fast C
modules that speed up the execution of Python code.


See the project home page for further information:

http://cython.org/


Have fun,

Stefan




More information about the Python-list mailing list