hn.today

Python's experimental JIT to be removed

lwn.net467 points253 comments
Screenshot of Python's experimental JIT to be removed

CPython’s experimental just-in-time compiler, introduced in 2024, is likely to be removed from the main codebase after its maintainers withdrew a proposal seeking approval to develop it as a supported feature. The JIT promised faster execution within CPython itself, avoiding some limitations of adopting alternative runtimes such as PyPy. The steering council had paused development and asked for a standards-track proposal explaining the compiler’s support commitments, compatibility guarantees, performance goals, and effects on distributors. It gave the team six months to secure approval or remove the code.

The JIT’s maintainers submitted PEP 836, but the council said it needed firmer plans and broader discussion before deciding whether the project should remain an experiment in CPython. Its concerns included maintenance and memory costs, security review, support across platforms, behavioral differences that could affect users, and a compatibility review scheduled too late. The council also wanted ongoing testing and more scrutiny from CPython’s wider developer community. Although it said the proposal addressed its questions, it judged some answers vague or overly optimistic and asked for further detail. The authors concluded they lacked the capacity to revise it to meet the bar, while reaffirming their belief in the technical approach. With the proposal withdrawn and its principal contributors unlikely to submit another, development in CPython’s main repository is expected to stop, and the JIT may be removed early in the Python 3.16 cycle. The reference implementation may remain available for others to explore.

Read on lwn.net253 comments on Hacker News

Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.

More in Programming

The daily digest

Today's best Hacker News stories, summarized and screenshotted, one email a day.