I'm studying the source code of numpy, and I was reading the numpy/_core/multiarray.py file, which contains core functions like concatenate or inner. These methods are decorated, and the definition of the decorator involves the module _multiarray_umath, which should exist in the file _core, however there is no such file. Searching in my local installation of numpy, I noticed that in _core there is a file called _multiarray_umath.cpython-313-x86_64-linux-gnu.so, and I guess this is the module actually imported by from . import _multiarray_umath. What kind of file is _multiarray_umath.cpython-313-x86_64-linux-gnu.so? The extension .so reminds me of shared objects in C++, so I guess this file is compiled during numpy installation, but how is it generated? The _core folder contains a src/multiarray folder written in C it seems, and I'd like to find there the implementation of concatenate or inner. Note: there is a module _multiarray_umath in the core folder, but since core is to be removed, I didn't pay much attention to it. Continue reading...