1–4 Jul 2024
Europe/Zurich timezone

The two flavors of Python 3.13

1 Jul 2024, 14:50
30m
"Standard talk" Plenary Session Monday

Speaker

Henry Fredrick Schreiner (Princeton University)

Description

This is a talk in two parts. The first part goes over what’s new in Python 3.13, the most forward-thinking release we’ve ever had. For the first time in 30+ years, Python has a new REPL implemented in Python with exciting new features. Python exceptions have color by default now, and several errors have been improved. There are also new typing features along with a new deprecated decorator that can be used by typing and at runtime. Lots of other smaller features were added, as well. And there now is a (disabled by default) JIT in CPython!

The second part of the talk will focus on a single feature that requires a second copy of Python: “free-threaded” Python, which for the first time ever removes the GIL and enables true multithreading. We’ll very briefly look at how it was done, and we will look at how to use it both from pure Python code as well as with a compiled extension, using scikit-build-core. This grand experiment might be the largest change to CPython we’ve ever had if it succeeds, and its success depends on all of you preparing for true multi-threaded code in Python.

Primary author

Henry Fredrick Schreiner (Princeton University)

Presentation materials