Bytecodes and stacks: A look at CPython’s compiler and its execution model
a talk by Petr Viktorin
So, you wrote some Python code. What needs to happen before it starts running? And once it's running, how does Python keep track of what it's doing?
I'll talk about CPython's tokenization, parsing, bytecode and its serialization and cache, the stack-based virtual machine, line number tables, and code, frame and function objects.
Don't worry if you've never heard of these concepts. While even experts should learn something new, the talk is aimed at anyone who's worked on a Python project or two.
This talk is suitable for both beginner and advanced Pythonistas.