Glen Fletcher edited this page Mar 23, 2016 · 5 revisions

This is a list of some of the stuff that we may like to see in Cython, and many make good starting points for Google Summer of Code projects.

CEPs are isolated ideas and concepts. They do not need to be full specifications; once it is believed that a concept is understood in enough detail that it won't be refactored into other pieces it is a good candidate for a CEP. However as CEPs are implemented they should develop towards a higher level of specificity (and eventually serve as documentation of the feature). Collections of more general enhancement ideas, especially if they are not specific enough to determine what "done" means, should usually be linked under Exploring new concepts.

CEP 1xx - User experience

Improvement for specific usecases or libraries. These are bigger end-goals driving the development priorities and depends on other CEPs for the details.

CEP 2xx - Frontend

Build system, command-line interface, library interface

CEP 3xx - Pure Python support

Supporting more features for pure Python code (without Cython syntax extensions)

CEP 4xx - Support for wrapping existing C/C++/Fortran/... libraries

Improved support for features in C/C++/Fortran code that is wrapped, often through extensions in the Cython declaration language.

CEP 5xx - Cython language features

Development of Cython as a language that is not covered by the 3xx or 4xx series.

CEP 6xx - Optimizations

Generating smarter output C code.

CEP 8xx - Backends

Different backends: C, C++ and others

CEP 9xx - Cython internals

Changes in the internal Cython implementation.

CEP 10xx - Cross-project specifications


Exploring new concepts

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.