Episode 27: Calling Things, Part 1
Episode 27 of the core.py podcast, hosted by Pablo Galindo and Łukasz Langa, titled "Episode 27: Calling Things, Part 1" was published on December 7, 2025 and runs 125 minutes.
December 7, 2025 ·125m · core.py
Summary
Inside of you there are two stacks. Actually, there’s three. The system-level call stack, the CPython call stack, and the interpreter’s evaluation stack. What is all that about? Today we’ll talk about how synchronous Python function calls work. Async stuff comes next time!## TimestampsHere you go — all square brackets changed to parentheses:(00:00:00) INTRO(00:02:28) PART 1: CALLING THINGS(00:04:19) The Lawful Good Language(00:13:18) Why is there a call stack?(00:19:45) Python functions are not tied to the system call stack(00:23:22) What's in a Python frame?(00:23:35) Execution book-keeping data(00:24:21) Locals(00:27:35) The interpreter evaluation stack(00:28:34) What are register-based interpreters?(00:36:33) Interpretation using the evaluation stack(00:42:46) Executing a function(00:45:37) How do exceptions fit into the execution model?(01:05:51) PART 2: PR OF THE WEEK(01:15:48) PART 3: DONATE.PYTHON.ORG(01:17:21) PART 4: WHAT'S GOING ON IN CPYTHON(01:27:59) Free threading changes(01:38:16) Performance(01:51:08) Bugfixes(02:04:03) OUTRO
Episode Description
Inside of you there are two stacks. Actually, there’s three. The system-level call stack, the CPython call stack, and the interpreter’s evaluation stack. What is all that about? Today we’ll talk about how synchronous Python function calls work. Async stuff comes next time!
## Timestamps
Here you go — all square brackets changed to parentheses:
(00:00:00) INTRO
(00:02:28) PART 1: CALLING THINGS
(00:04:19) The Lawful Good Language
(00:13:18) Why is there a call stack?
(00:19:45) Python functions are not tied to the system call stack
(00:23:22) What's in a Python frame?
(00:23:35) Execution book-keeping data
(00:24:21) Locals
(00:27:35) The interpreter evaluation stack
(00:28:34) What are register-based interpreters?
(00:36:33) Interpretation using the evaluation stack
(00:42:46) Executing a function
(00:45:37) How do exceptions fit into the execution model?
(01:05:51) PART 2: PR OF THE WEEK
(01:15:48) PART 3: DONATE.PYTHON.ORG
(01:17:21) PART 4: WHAT'S GOING ON IN CPYTHON
(01:27:59) Free threading changes
(01:38:16) Performance
(01:51:08) Bugfixes
(02:04:03) OUTRO
Similar Episodes
Apr 10, 2026 ·53m
Apr 6, 2026 ·33m
Mar 30, 2026 ·42m
Mar 30, 2026 ·119m
Mar 17, 2026 ·46m
Mar 2, 2026 ·119m