Introduction

Welcome to CySparse‘s developers manual!

CySparse is a fast sparse matrix library for Python/Cython.

Maintening a library as CySparse is not a small task. This is partly due to:

  • the mix of several programming languages (mainly Cython, Python and C);
  • the use of templated source files;
  • the use of several external tools (cygenja, Jinja2, Sphinx, LaTeX, etc.);
  • the optimized code (several code chuncks are highly optimized for speed);
  • the coupling with NumPy;
  • the language Cython that is not really mature yet. The team behind Cython is doing a fantastic job but the language still has numerous bugs. If you’ve never used a compiler with bugs, welcome to this wonderful world were you might have to debug the compiler as much as your code (yep!);