Skip to content
Why Python is Slow: Antonio Cuni on SPy and Statically Compiled Python episode artwork

EPISODE · Apr 30, 2026 · 26 MIN

Why Python is Slow: Antonio Cuni on SPy and Statically Compiled Python

from Behind the Commit

Antonio Cuni (principal engineer at Anaconda, author of SPy, developer of PyScript and PyPy, co-founder of the HPy project, and creator of PDB++, Fancy Completer, and VMProf) shares why Python is slow and how SPy, a new statically compiled variant of Python, aims to be as fast as C while staying as Pythonic as Python. We discuss the trade-off between dynamic features and performance, how SPy's "red and blue" code model replaces best-effort JIT with predictable errors, why PyPy struggles with C extensions, and what "Pythonic" really means. Outline 00:00 - Episode highlights and introduction 00:40 - Why is Python so slow? 01:31 - Would a static Python be fast? 02:13 - What is SPy? 02:28 - What motivated you to create SPy? (Spoiler: frustration) 03:52 - Which ideas from PyPy and HPy went into SPy? 06:36 - Biggest challenges of building SPy 07:49 - What does "Pythonic" actually mean? 10:39 - Current roadmap and the two-level language idea 12:24 - Walking through the SPy compilation pipeline 13:57 - Red-shifting and the blue/red AST nodes 14:40 - Why blue and red? (No, it's not from The Matrix) 15:52 - PyPy vs SPy: when to use which 19:34 - C extensions and the C API problem 20:04 - How to actually make your Python code faster 23:34 - Memory management and garbage collection in SPy 24:44 - When will SPy be production-ready? 25:44 - How to contribute to SPy 26:26 - Where does the name "SPy" come from? Note: the episode was recorded in July 2025 and some features, such as list type, garbage collector, and documentation, have been implemented in the meantime. In the section below you can find the links to those features. Episode links – SPy on GitHub: https://github.com/spylang/spy – PyPy: https://pypy.org/ – HPy project: https://hpyproject.org/ – PyScript: https://pyscript.net/ – Anaconda: https://www.anaconda.com/ – decorators in SPy: https://github.com/spylang/spy/pull/225 – SPy roadmap: https://github.com/spylang/spy/blob/main/ROADMAP.md – list type in SPy: https://github.com/spylang/spy/blob/main/stdlib/_list.spy – garbage collector in SPy: https://github.com/spylang/spy/pull/390 – SPy documentation: https://spylang.github.io/docs/dev/ – series of blog posts on SPy: https://antocuni.eu/2025/10/29/inside-spy-part-1-motivations-and-goals/

Episode metadata supplied by the publisher feed · Published Apr 30, 2026

Embed this episode

Ready to play

Why Python is Slow: Antonio Cuni on SPy and Statically Compiled Python

0:00 26:30

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

No similar episodes found.

No similar podcasts found.

Frequently Asked Questions

How long is this episode of Behind the Commit?

This episode is 26 minutes long.

When was this Behind the Commit episode published?

This episode was published on April 30, 2026.

Can I download this Behind the Commit episode?

Yes. Use the download control on the episode player to save the publisher-provided media file.
URL copied to clipboard!