first, there is a new post about using Pythran on random kernels found
on the web:
second, I just merged an important PR (namely
https://github.com/serge-sans-paille/pythran/pull/949), and its worth a
word. this PR introduces the concept of partially constant shape, i.e. a
shape where some values are known at compile time and hard-coded in the
array type. What are the consequences? It's now possible to write
#pythran export foo(int[:,:,3])
to make sure the foo function only accepts 3D arrays where the last
dimension is 3. This un leashes a few optimisation later on when
iterating over this dimension.
It also changes the internal repsentation of an ndarray, from
template<typename T, size_t N> struct ndarray;
template<typename T, typename S> struct ndarray;
Which may matter for people directly using the generated C++ code.
I'm very happy this landed in master, there may be some problems I did not
foresee, feel free to test and report issues !