Many MLIR compiler pipelines generate code via LLVM, with a translator written in C++.
We added an alternative translator in Python, using Numba's llvmlite.
We've done some promising experiments using this, allowing us to get some pretty good performance in pure Python, which we'll share soon.