LPython is an ahead-of-time compiler for Python, built using the Abstract Semantic Representation (ASR) technology. Part of the LCompilers collection.
LPython is written in C++, and it has multiple backends to generate code, including LLVM and C++. The compiler has been open-sourced under the BSD license, available at github.com/lcompilers/lpython. It is designed as a library with separate building blocks – the parser, Abstract Syntax Tree [AST], Abstract Semantic Representation [ASR], semantic phase, codegen – that are all exposed to the user or developer in a natural way to make it easy to contribute back. It works on Windows, Linux, and Mac OS. The speed of LPython comes from the high-level optimizations done at the ASR level, as well as the low-level optimizations that the LLVM can do. In addition, it is remarkably easy to customize the backends.
It is in heavy development, currently in pre-alpha stage, and aims to give the best possible performance for array-oriented code. Remarks and suggestions are very welcome.
Any questions? Ask us on Zulip or our mailing list.
Links to other available Python compilers: