-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Home
scoder edited this page May 7, 2020
·
10 revisions
This is a wiki for anything related to the Cython or Pyrex projects.
Cython is a language that makes writing C extensions for the Python language as easy as Python itself.
Cython is based on the well-known Pyrex, but supports more cutting edge functionality and optimizations.
Development of Cython is partly motivated by the needs of SAGE.
See our proposals for the Google Summer of Code 2011.
- The Cython FAQ
- Release History and older versions.
- Documentation
- Example (Mandelbrot fractal)
- Bug and Feature Tracker
- Git Repository (and Change Log)
- Differences between Cython and Pyrex
- Unsupported Python features (aka TODO list)
- Hacker-Guide: How to work on the Cython compiler itself
- Enhancement proposals (CEPs)
- Projects using Cython
- Comparison with SWIG
- Automatic .pxd/.pyx generation from C or C++ header files.
-
PyPi via
easy_install
or pip - Gentoo Ebuild
- Debian package (not always up to date)
- Installing Cython on Windows
- Getting started
- Using early binding techniques to improve speed
- Writing Cython programs in pure Python
- Helpful notes for wrapping C++ APIs
- Discussion of all the options how to wrap C/C++ code to Python
- WritingFastPyrexCode
- Successful creation of a hierarchy of modules in a package
- One method for source-level debugging
- Dynamic Memory Allocation (malloc, realloc, free)
- Profiling
- Building a Windows Installer
- Embedding Python to create standalone Cython programs.
- List Subclass Example Adding mathematical operations to subclassed built-in list.
- Working with Numpy
Stefan Behnel, Robert Bradshaw, Dag Seljebotn, Lisandro Dalcin.
Our development mailing list is cython-dev and user mailing list at http://groups.google.com/group/cython-users.
In the past we also used a Google group and a list at BerliOS Developer. You can still read the archives at Gmane.
- Fully supported easy-to-use test suite, including the normal CPython test suite.
- Easy installation and usage.
- Rich, accessible documentation. Make sure the examples are plenty and can be automatically tested.
- Make Cython part of the standard distribution of Python (like ctypes).
- Compile all Python code except for possibly some obvious exclusions, which will be worked out by developers.
- Very fast when the user explicitly declares types (but we're not going to make promises with type inference). Precise benchmarks.
- Mitigate or eliminate the need for users to invoke the Python/C API directly without sacrificing performance.
- See http://docs.cython.org/.
- Official Pyrex Language Overview (note the changes though).
- Extension Types
- Sharing Declarations Between Pyrex Modules
- FAQ
- Quick Guide to Pyrex from Michael JasonSmith.
- CategoryCythonDoc lists pages that are related to Cython documentation.
- Pure Python mode
- SAGE Days 4 talk highlighting some of the differences between Pyrex and SageX (the predecessor of Cython).