Mettez-vous hors ligne avec l'application Player FM !
Episode 4 - Frame Evaluation
Manage episode 386575711 series 3522009
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
15 episodes
Manage episode 386575711 series 3522009
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
15 episodes
所有剧集
×Bienvenue sur Lecteur FM!
Lecteur FM recherche sur Internet des podcasts de haute qualité que vous pourrez apprécier dès maintenant. C'est la meilleure application de podcast et fonctionne sur Android, iPhone et le Web. Inscrivez-vous pour synchroniser les abonnements sur tous les appareils.