CPython may go Rusty, but older platforms risk getting iced out
- Reference: 1763550007
- News link: https://www.theregister.co.uk/2025/11/19/cpython_may_use_rust/
- Source link:
It's a [1]pre-PEP because official Python proposals are called [2]PEPs , short for Python Enhancement Proposals. The idea has been bruited by two core Python developers, [3]Emma Smith and [4]Kirill Podoprigora , who write:
Rust will initially only be allowed for writing optional extension modules, but eventually will become a required dependency of CPython and allowed to be used throughout the CPython code base.
The post is very readable, and it addresses several of the more obvious objections. For example, it lists the 20 core platforms that [5]CPython officially supports , and notes that all have some level of Rust support – although 11 of them are Tier 3 platforms for Rust. It also creates an interesting cyclic dependency for bootstrapping the Python interpreter: building Rust from scratch [6]depends on Python . In other words, if you don't have any form of Python on your computer, you will need Rust to build it – and currently, if you don't have any form of Rust, you need Python.
It also notes a handful of platforms CPython runs on that have no Rust support whatsoever, including [7]Reg FOSS desk favorite RISC OS , as well as HP PA-RISC, Mac OS X on PowerPC, and CentOS Linux 6.
CPython has special status because it is the official reference implementation of the Python language, but it is just one of a [8]great many implementations , including 12 variants of CPython itself, plus 15 working versions in other languages – of which one is [9]RustPython – and many more besides.
[10]
We are strongly reminded of the recent moves for [11]Debian's APT to require Rust , which is similarly likely to leave some older platforms stranded – including Debian for HP PA-RISC.
[12]
We were going to go for a tentacle simile, but Rust's mascot is a crab, so perhaps the [13]Atlantic spider crab or [14]Alaskan king crab are better comparisons. All can be highly invasive in some environments, but often they are welcomed because they are, apparently, delicious.
As Rust's reach grows like a spider crab's legs, it seems to us that for both Debian's APT and soon perhaps CPython, one of two possible outcomes must happen. Either the communities behind some minority platforms invest real effort into ensuring that they have Rust support – and do it soon – or they will be left behind by the continuing technological evolution of modern FOSS. ®
Get our [15]Tech Resources
[1] https://discuss.python.org/t/pre-pep-rust-for-cpython/104906/1
[2] https://peps.python.org/
[3] https://emmatyping.dev/
[4] https://github.com/Eclips4
[5] https://peps.python.org/pep-0011/
[6] https://github.com/rust-lang/rust/blob/main/src/bootstrap/bootstrap.py
[7] https://www.theregister.com/2024/05/02/rool_530_is_here/
[8] https://wiki.python.org/moin/PythonImplementations
[9] https://rustpython.github.io/
[10] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2aR33qhaWR1lOkzBIE_cNoQAAANg&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0
[11] https://www.theregister.com/2025/11/03/debian_apt_to_require_rust/
[12] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44aR33qhaWR1lOkzBIE_cNoQAAANg&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[13] https://upcyclink.fr/en/the-atlantic-spider-crab-a-valuable-invader/
[14] https://www.theguardian.com/environment/2020/dec/20/crab-22-how-norways-fisheries-got-rich-but-on-an-invasive-species
[15] https://whitepapers.theregister.com/
Re: Rust's mascot is a crab
> This particular malignancy is seemingly metastisizing all over the shop.
Ouch.
I mean that is a nice and very pointed observation, but OTOH, I didn't want to be that nasty to the Rust folks. I have nothing against it and the backlash I got for pointing out its deficiencies in async handling compared to Go put me off for literally years.
> between SFA and not all, I suspect.
:-D Well quite.
Rust is the solution!
Now what was the problem?
We seem to be entering a stage where the priority is to use Rust, and all other considerations are secondary. It's an end in itself.
Re: Rust is the solution!
Just like systemd & a1. Stability, security & correctness is no fun at all.
Re: Rust is the solution!
In an article that does not mention systemd and has nothing to do with systemd, you’ve mentioned systemd. I have never understood this.
Re: Rust is the solution!
Focus on the word "like".
Nothing to see here
Given the continual breaking changes in Python point releases, this seems more of the same. The language is in a permanent beta state.
Re: Nothing to see here
Citation Needed.
Re: Nothing to see here
> The language is in a permanent beta state.
No, no, sir, it's just FOSS. It's all like that.
You get used to it.
And when you do, you realise that the proprietary stuff is just the same, but with more marketing behind it. "Major new version", bugfix, bugfix, bugfix... Blah blah deprecated blah...
GCC rust frontend
Maybe it is time for GCC to add a rust frontend that can be used with all supported backends. Then there would be no or a significantly lesser problem for those old and obscure architectures.
I know, it is almost a heretic's suggestion, but maybe, just maybe it would make sense.
Re: GCC rust frontend
> GCC to add a rust frontend
A team is working on it.
https://github.com/Rust-GCC/gccrs
I considered mentioning this, but I have done before, e.g.
https://www.theregister.com/2022/12/15/gcc_13_rust_support_merged/
And some of the issues...
https://www.theregister.com/2022/09/16/rust_in_the_linux_kernel/
Is that not what you want? If not, why not?
Re: GCC rust frontend
Yes, and I do know it exists and it is WIP; "very early stage" as they mention. It is effectively unusable as long as it is not in "stable" release. Therefore, it is currently effectively non-existent as alternative.
For the "heretic" part, a rust compiler not written in rust will make some purists' corrosive potential more potent (gcc's main code body is not written in rust). So, if this is allowed accelerated oxidation, then the heat will cause flames and may burn down the bitbarn. ;-)
Re: GCC rust frontend
> WIP; "very early stage" as they mention
Yes, all true.
But the thing that can happen with FOSS projects sometimes is that they trundle along very slowly for years, and then something comes up which increases their importance, suddenly a bunch of people chip in -- or better still some company decides to adopt it and use it -- and suddenly the speed of development increases sharply.
So, for instance, in this case, one of the biggest families of distros says that you'll need Rust to build the packaging tool, or a very popular and widely-used language suddenly needs it to build, and the result is that some minor architectures find they either need a working LLVM port and toolchain right now, or, they need a working alternative toolchain right now, or they are going to lose support.
Suddenly just 1 or 2 volunteers from the worlds of, say, PA-RISC or elderly CentOS or SPARC Linux or something all step up, and the team triples in size overnight, and they get a working release out, and hey presto, their platforms don't lose support after all -- and while maybe these folks only wanted Python but they helped Debian too, or they only wanted to keep APT working but they accidentally helped Python too.
Right now this is happening with the Rust coreutils and sudo-rs projects because Canonical adopted them into Ubuntu 25.10.
Sigh
More CV burnishing.
Rust's mascot is a crab
A crab in Latin cancer I believe.
This particular malignancy is seemingly metastisizing all over the shop. :)
The circular dependancy problem could be dealt with by freezing in a minimal version of the last rust free python version into the rust compiler source tree.
C builds bespoke cpython which is used to bootstrap rust which can then be used to build the latest rust dependent python.
How much anyone running HPUX 10.20 on a parisc cares about rust or recent python versions would be anyone's guess—between SFA and not all, I suspect.