Episode 7: The Old Parser
core.py31 Jan 2024

Episode 7: The Old Parser

Context-free grammars, non-deterministic finite automatons, left-to-right leftmost derivations... what even is all that?! Today we're talking about how Python parses your source code. We start gently with how this worked in the past. Come listen to Łukasz's high-level explanations and Pedantic Pablo's "well actuallys".


# Timestamps


(00:00:00) INTRO

(00:01:35) You can still download Python 1.0!

(00:02:19) The original tokenizer

(00:03:10) What even is a tokenizer?

(00:04:08) FUN FACTS ABOUT THE TOKENIZER

(00:04:34) Circumflex

(00:05:16) Python's invisible braces

(00:08:29) Backticks in the syntax

(00:11:00) Where are the comments stored?

(00:12:27) GRAMMAR

(00:13:37) What is a grammar?

(00:16:25) The long-forgotten 'access' keyword

(00:20:25) Making LL1 do things it wasn't meant to do

(00:23:24) SURPRISE QUESTION 1: soft keywords

(00:24:46) What's a context-free grammar?

(00:26:51) A note about backslashes

(00:29:33) The Dragon Book(s)

(00:31:27) PARSING: What is it?

(00:35:23) How to generate a parser?

(00:39:00) LL Cool Parser

(00:41:15) What if we used LR?

(00:44:01) Let's have three tokenizers!

(00:47:50) 2to3 and its legacy

(00:52:38) Black and its blib2to3

(00:54:04) The pesky 'with' statement and the death of LL1

(01:00:05) PR OF THE WEEK: GH-113745

(01:05:41) SURPRISE QUESTION 2: Subclasses of SyntaxError

(01:07:02) WHAT'S GOING ON IN CPYTHON?

(01:09:16) Sam Gross nominated as a core dev

(01:10:13) Free-threading progress

(01:13:11) Faster CPython changes

(01:17:29) ntpath.isreserved()

(01:20:11) Pablo and the DWARF

(01:22:02) OUTRO

Denne episoden er hentet fra en åpen RSS-feed og er ikke publisert av Podme. Den kan derfor inneholde annonser.

Episoder(31)

Episode 30: Live from EuroPython, an Interview with Guido van Rossum

Episode 30: Live from EuroPython, an Interview with Guido van Rossum

This one is a short one. But it's also a big one. We'd invite you to listen to it, but you don't need to follow us. You don't need to follow anybody! You've got to think for yourselves! You're all ind...

28 Jul 42min

Episode 29: Is CPython developed with AI now?

Episode 29: Is CPython developed with AI now?

Let's talk about what it really means in practice that AI tools are used in the cpython GitHub repository now. First-hand opinions based on first-party experience. And some personal news!## Timestamps...

17 Apr 2h 9min

Episode 28: 2025 In Review

Episode 28: 2025 In Review

Let's take a breather from heavy content and take a look back at last year in this light but spicy episode! The good, the less good, and the disgusting. All that in barely an hour!## Timestamps(00:00:...

3 Jan 1h 16min

Episode 27: Calling Things, Part 1

Episode 27: Calling Things, Part 1

Inside of you there are two stacks. Actually, there’s three. The system-level call stack, the CPython call stack, and the interpreter’s evaluation stack. What is all that about? Today we’ll talk about...

7 Des 20252h 5min

Episode 26.2: CPython Sprint Week in Cambridge UK, Part 2

Episode 26.2: CPython Sprint Week in Cambridge UK, Part 2

More interviews from the core sprint! This time we have: Greg P. Smith, Thomas Wouters, Paul Ganssle, Pradyun Gedam, Carol Willing, Guido van Rossum, Brett Cannon, Erlend Aasland, Tal Einat, Lysandros...

25 Okt 20252h 18min

Episode 26.1: CPython Sprint Week in Cambridge UK, Part 1

Episode 26.1: CPython Sprint Week in Cambridge UK, Part 1

What? What do you mean this two-and-a-half hour episode is PART 1? Well, there were fifty people at the sprint in September. We interviewed thirty of them. In Part 1 you can hear from 18 of them: Ken ...

15 Okt 20252h 24min

Episode 25: A Python That Never Was

Episode 25: A Python That Never Was

What if some rejected PEPs were actually accepted? How would Python look today? Let's go through 10 PEPs from the past and imagine an alternative future for the language!## Timestamps(00:00:00) INTRO(...

26 Aug 20252h 1min

The Megahertz

The Megahertz

Python 3.14? That's old news. Let's talk about the first big feature of Python 3.15 -- a built-in sampling profiler for Linux, macOS, and Windows. We also cover improvements in perf support, discuss m...

12 Jul 20251h 42min

Populært innen Politikk og nyheter

giver-og-gjengen-vg
aftenpodden
bt-dokumentar-2
aftenpodden-usa
forklart
stopp-verden
fotballpodden-2
popradet
nokon-ma-ga
det-store-bildet
rss-espen-lee-usensurert
hanna-de-heldige
rss-gukild-johaug
dine-penger-pengeradet
rss-ness
aftenbla-bla
unitedno
saken
frokostshowet-pa-p5
lydartikler-fra-aftenposten