Sebastiaan Zeeff
Sebastiaan is a Software Engineer for the Ordina Pythoneers and a Fellow of the Python Software Foundation. He has a passion for teaching Python and writing clean code. Sebastiaan is also active in the Python community, as an owner of Python Discord, open-source contributor, Python educator, and FinAid team lead for EuroPython. As a public speaker, he makes frequent appearances at Python conferences, including various regional PyCons, EuroPython, FOSDEM, and Pyjamas Conf. Sebastiaan lives in The Netherlands.
Session
Diving into the CPython source code can feel daunting. Whether you want to start contributing or just want to get a better understanding of Python by exploring its source code, it’s often difficult to know where to start or what you’re missing.
In my talk, I will show you around the CPython source code by implementing a new operator, a pipe operator. While doing so, I will discuss core parts of the internals, such as Python’s grammar, its syntax trees, and the underlying logic that will perform the operation. By the end, you will have a good idea of the moving parts involved in core language features.
I will also take you through the steps necessary to make it all work. I’ll show you how I obtained a copy of the source code, regenerated the parser and token files, and how I compiled my modified version of CPython. I will also write and run tests to help me implement my changes. This should give you a mental framework that helps you while diving into more comprehensive resources, like the excellent Python Developer’s Guide.
My talk is aimed at everyone who wants to explore CPython’s internals. You don’t have to be an expert in Python, although some affinity with Python helps with understanding the internals. I will also use C to implement some of the operator logic, but knowledge of C is by no means required. In short, if you’re interested in diving into the CPython source code, this talk is for you.