Summary
A new chip can execute Python directly in hardware.
uv and pip get pylock.toml support.
Facebook announces Pyrefly, a new type checker
Python in Silicon (don't google that)
You know how I confidently said Python will never amount to much in the world of real-time processing?
That was a blog post ago.
This week, however, somebody announced PyXL, a board that can natively execute Python in hardware. Which, notably, features "deterministic timing, real-time behavior, and sub-microsecond precision".
I guess Irony can be pretty ironic sometimes.
Why is it interesting? Well, in short, PyXL is a custom chip that runs Python directly in hardware, which means it bypasses the Python VM completely without the need to write any low-level code.
Directly is maybe a bit misleading, you do have a tool chain that goes:
Python source → CPython bytecode → PyXL Assembly → hardware binary.
But it's not just compiling Python like nuitka. The dedicated assembly and silicon make the whole program very close to the underlying processor.
This means you can write familiar dynamic Python code (or a subset anyway, and with no c-extensions) that not only runs 50 times faster than the equivalent embedded MicroPython script, but also in a predictable timing, with low latency, and with direct access to the underlying metal.
Practically, this is useful to write things like on-the fly data processing (sound, network packet, camera sensors...) that can't drop chunks or unsync. If you do live music, this avoids misalignements. If you code the automatic breaking system of a vehicle, this avoids dying.
It's not the first attempt at Python in hardware. There was PyCPU 10 years ago, and even a Python to Verilog transpiler, polyphony, but they stayed niche. This new project also has to face the competition of new alternatives, like simple compiled languages such as Nim.
Of course I'm divided on making more approachable the development of very critical systems. I'm not thrilled about maybe one day flying a Boeing with flap controls designed by junior Python devs who cheated at their interview with ChatGPT. Some might say embedded programming being obscure is kind of a feature: you want obsessed dedicated nerds on this.
Despite all that, and while there is nothing available that you can buy yet, I'm intrigued and eagerly await the planned PyCon 2025 talk.
Locked and loaded
Last February, we talked about the new official lock file format for Python that will finally rule them all and bind them. And also provide a standard for reproducible project installation.
Good news, this month both pip and uv make a new release supporting the now infamous pylock.toml
file.
For uv, it is supported by the new command uv export
and the old uv pip compile
(if you pass --format pylock.toml
) to dump the deps .
Installing them can be done with either the modern uv pip sync
or the compat oriented uv pip install
.
uv still produces and sync the uv.lock
file by default. You have to explicitly export to get the new lock file.
For pip, you can do pip lock
to export, but installing is not supported yet. Also, the release notes insist on the fact that the lock file is platform-specific.
A wild type checker appears
It seems it's always "rewrite-to-rust" season somewhere in snakeland. Astral's future type-checker red-knot is now getting competition from Facebook with project Pyrefly, a rewrite of their existing type checker, Pyre, that was mostly Ocaml and Python.
The project has recently been announced and is still marked as "NOT INTENDED FOR EXTERNAL USE YET. INCOMPLETE AND IN DEVELOPMENT", so far from usable.
The stated goal is perf but also a more pragmatic approach to type checking by providing a lot of inference, gathering strategies from all already existing tools.
Between those three and mypy plus pyright, we are not going to lack options. Which is a sign it's definitely not a solved problem.
Typing has improved a lot in the language during the last years, and it's quite usable, but I would be lying if I said I enjoy it in its current state. So, having competition is great, and let's hope it will eventually converge to one great thing, like it did for packaging.
It took a few decades last time, though.