Happy to oblige, but as argued above I'm not entirely sure about how to name that file/where to put it? Is it possible to have a Cython "sparsefuncs.pyx" and a normal Python "sparsefuncs.py"? (Alternatively, I could probably also merge the CSR/CSC into this single function?