Skip to content
Tech News
← Back to articles

Python 3.14 compiled to metal – no interpreter

read original more articles

pon

pon is a JIT & AoT native compiler and runtime for Python 3.14, written in Rust. There is no interpreter and no bytecode: every module is parsed with the ruff parser, lowered to one shared IR, and compiled to machine code through Cranelift — either just-in-time inside the process ( pon run ) or ahead-of-time into a standalone native executable ( pon build ). Memory is managed by a Green Tea garbage collector instead of reference counting, and correctness is enforced by a byte-exact differential harness against CPython v3.14.0.

The end goal is the bun/v8 of Python: a runtime that passes the CPython test suite, runs a multi-tier JIT well past CPython, ships single-binary executables, and includes batteries (package manager, tooling) out of the box. The project is under heavy active development — see Status for what is true today versus where it is going.

Quickstart

# JIT: parse → IR → Cranelift → run, in-process printf ' def add(a, b):

return a + b

print("hello, world")

print(add(2, 3))

' > hello.py cargo run -p pon -- run hello.py # AoT: same IR through cranelift-object, linked into a native executable cargo run -p pon -- build hello.py -o hello ./hello

... continue reading