4 ms·
TLDR: No The hardest part of supplanting CPython is the fact that the FFI is already validated on a huge amount of implementations. I believe Cinder and Pyston
by zitterbewegung 4y ago
TLDR: No
The hardest part of supplanting CPython is the fact that the FFI is already validated on a huge amount of implementations. I believe Cinder and Pyston work out of the box but they are on older versions of python but Pyston wants to be merged back into CPython and so does Cinder (or at least what is relevant). On the other hand JIT in CPython can be achieved by other python packages. Pyston has also extracted the JIT and can be added to 3.7 - 3.10 by installing it. See https://pypi.org/project/pyston/ https://pypi.org/project/pyston/
Pypy is a separate reference implementations that has tried to achieve something different but hasn't supplanted python for years. It has had a JIT and the ability to change garbage collectors but the system stuffers when interacting with C FFIs
Pyodide is inthe browser so its something completely different but has no support for CFFIs.
IronPython (.net), Jython are inactive. Also GIL removal from CPython has been attempted multiple times but now that CPython is being funded by Microsoft to become faster makes it more unlikely that CPython will be supplanted.
- brucethemoose2 4y agoGraalVM also has a nascent Python runtime, which could be extremely performant. But I think OS devs dont really want to put optimization work into GraalVM, as their hard worked could get sucked up and locked behind the Enterprise Edition.
- zitterbewegung 4y agoMainly resource exhaustion from developers makes the other runtimes fade into the background while resources being put into web deployment (pyodide) and microcontrollers (micropython and circuitpython) are a much better idea.
- noloblo 4y agoWhat's graalvm and where does it fit in with the larger Python ecosystem
- brucethemoose2 4y agoIts a "universal" VM from Oracle that supports many languages and other bells and whistles like AOT compilation of interpreted languages: https://www.graalvm.org/ https://www.graalvm.org/ But its Java support is most prominant, and the its runtime is significantly faster than OpenJDK. Which is why its so promising for Python. I'd argue that OpenJDK is way ahead of the Pyton runtime, and GraalVM is way ahead of OpenJDK. But its also kinda iffy because: - Python support isn't very good now - Oracle is Oracle. Hence they have the better optimizations walled off behind a "Enteprise Edition" registration and license.
- zitterbewegung 4y agoI wouldn't touch it with a ten foot pole because other than Oracle suing Google over API reimplementation they can eventually abandon the runtime.