The Explorer project uses Polars which in turn uses Apache Arrow. IIUC Arrow is more for data analytics and manipulation than for the applications Nx is intended for. For example, I’m not really sure it’d be possible to implement Nx.conv
using Apache Arrow (just one example).
If you are interested in writing an Nx backend or compiler, there are many options out there that could be fun to explore:
- Apache TVM
- ArrayFire
- TACO (which supports sparse compilations as well)
- Tiramisu
- Halide
These are just to name a few