I know that the literal reading of the docs says that the only
permitted values are CPython, IronPython, Jython and PyPy. But I find it
impossible to believe that is the intended meaning.
Here are some more implementations of Python which are, as far as I
understand it, are under active development, and are complete
re-implementations, not forks of one of the above:
-
RustPython (Python in Rust)
-
GraalPython (Python 3 in Java, on the Graal VM)
-
MicroPython
-
Brython (Python in Javascript for the browser)
and I have probably missed some.
(I havenât linked to them all because I think that Discourse does not
like email replies with more than one or two URLs. But the search
engine of your choice will find them.)
MicroPython 1.9.4 does not implement the platform module, so the
question of what it should advertise itself as is moot. I donât know
what the others do.
I think that forcing, say, RustPython to claim to be CPython would make
a mockery of the whole thing
To my mind, the only real question here is whether the Python docs are
intended to be an official register of valid implementation names, or
can implementations just pick any name they choose.