Demystifying Python's Internals: Diving into CPython by implementing a pipe operator
Over the past couple of years, we’ve been lucky to see the publication of a lot of great resources on diving into and contributing to CPython. Good examples include the excellent Python Developer’s Guide and Anthony Shaw’s comprehensive CPython Internals.
And yet, when I talk to people who express an interest in contributing or exploring Python’s internals, a lot say that they find the scope of Python daunting and that they question whether they have the skills to understand the inner workings of the language.
With this talk, I want to provide an accessible introduction to CPython’s internals by taking the audience through the process of adding a pipe operator to the language. Instead of the passive approach of presenting the information as-is, as you’d find in reference material, I will take the active approach of discussing the topics as they come up naturally while implementing the operator.
Distilled into a general overview, I will take the audience through the entire development cycle from cloning the source code to compiling the modified version of Python. When relevant, I will briefly introduce topics like Python’s grammar, syntax trees, implementing logic, running the test suite, and the general structure of the source code. By the end, the audience will have a general understanding of the moving parts and magic involved in CPython’s internals.
The aim of my talk is not to be comprehensive. Rather, I hope to give the audience a mental framework that makes approaching the CPython internals easier. By demystifying the inner magic of Python, I want to give people the confidence they need to take that dive and potentially become a part of the next generation of Python contributors.
This session took place in track Python Language and was classified suitable for some domain / some python by the speaker.