Discover this podcast and so much more

Podcasts are free to enjoy without a subscription. We also offer ebooks, audiobooks, and so much more for just $11.99/month.

Episode 4 - Frame Evaluation

Episode 4 - Frame Evaluation

Fromcore.py


Episode 4 - Frame Evaluation

Fromcore.py

ratings:
Length:
73 minutes
Released:
Nov 29, 2023
Format:
Podcast episode

Description

What makes Python an interpreter? Today we're talking about ceval.c, the wonders of frame evaluation, and how it changed over the years.

# Timestamps

(00:00:00) INTRO
(00:00:59) BACK TO PYTHON 2.6
(00:02:53) Stack virtual machine
(00:04:41) First encounter with opcodes
(00:08:06) What even is frame evaluation?
(00:12:51) Stack! Which stack?
(00:15:46) PRESENT DAY
(00:16:41) Computed gotos
(00:21:22) PEP 523: JIT me, maybe
(00:26:53) Let's generate the interpreter
(00:29:08) The JIT is coming
(00:33:13) Python function call inlining
(00:37:23) Instrumentation: DTrace, PEP 669
(00:41:50) lltrace and pystats
(00:44:02) Eval breaker
(00:47:54) Signal handling
(00:50:47) Recursion limits
(00:54:27) String concatenation special case
(00:58:24) WHAT'S GOING ON IN CPYTHON?
(00:58:42) 3.12.0a2
(00:59:12) Critical section API adoption
(00:59:34) PyOnceFlag
(01:00:28) PyDict_GetItemRef()
(01:03:36) PyList_Extend() and PyDict_Pop()
(01:04:18) Parser: better error messages for non-matching elif/else
(01:05:39) glob.translate()
(01:07:22) TLS-PSK in the ssl module
(01:08:35) IDLE debugger improvements
(01:10:50) First micro-op in the Tier 2 interpreter
(01:11:18) OUTRO
Released:
Nov 29, 2023
Format:
Podcast episode