Analysis updated 2026-05-18
Run a Python script through a just-in-time native compiler instead of the standard interpreter.
Compile a Python script ahead of time into a standalone native executable.
Study a real-world example of building a compiler with Rust, Cranelift, and a custom garbage collector.
Use the built-in package manager to resolve and install Python dependencies from PyPI.
| can1357/pon | penthertz/luksbox | openabdev/openab | |
|---|---|---|---|
| Stars | 527 | 502 | 480 |
| Language | Rust | Rust | Rust |
| Setup difficulty | moderate | moderate | moderate |
| Complexity | 5/5 | 3/5 | 3/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires the Rust toolchain and Cargo to build and run, plus a pinned nightly Rust version for the project to compile correctly.
pon is an experimental project that compiles Python code directly into fast native machine code instead of running it the usual way. Normal Python programs are read and executed one instruction at a time by an interpreter, but pon skips that step entirely. It parses Python 3.14 source code, converts it into an internal representation shared across the whole project, and turns that into real machine code, either instantly while the program runs or ahead of time into a standalone executable file you can hand to someone else. The project is written in Rust and uses an established compiler backend called Cranelift to generate the machine code, along with a parser borrowed from the ruff project. Memory is cleaned up by a custom garbage collector rather than Python's usual counting approach. The team's stated goal is to eventually be a faster, more complete Python runtime along the lines of how Bun and V8 changed JavaScript, including its own package manager and tooling, though the README is clear this is still under heavy, active development rather than a finished product. Correctness is checked by comparing pon's output byte for byte against the real CPython interpreter running the same code, and this comparison is enforced automatically in continuous integration so the project cannot silently regress. As of the README, more than 200 test modules pass this exact matching check under the fast in process mode, and a smaller number also pass when compiled ahead of time into a native binary. The project also includes a package manager modeled on modern tools like uv, capable of resolving dependencies and installing packages from the standard Python package index, though it is not yet fully wired into the rest of the runtime's testing. Getting started requires Rust's Cargo build tool. The README lists commands for running a script directly, compiling it into a native executable, opening an interactive shell, or running code from a command line string, all mirroring familiar Python usage patterns. This project fits people already comfortable with compilers, Rust, and Python internals rather than newcomers, since the README assumes that background throughout.
An experimental Rust project that compiles Python 3.14 directly to native machine code instead of interpreting it, checked byte-for-byte against CPython.
Mainly Rust. The stack also includes Rust, Cranelift, Python.
The README does not state a software license for this project.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.