Explore the evolution of parsing techniques from LL(1) to PEG in this comprehensive EuroPython 2021 conference talk. Delve into the fundamentals of compiler frontend, including Context-Free Grammar (CFG), traditional parsing methods, and the relatively new concepts of Parsing Expression Grammar (PEG) and Packrat parsing. Gain insights into the motivations behind Guido van Rossum's initial choice of LL(1) and subsequent shift to PEG parser for CPython. Whether you're a beginner with no compiler background or an experienced developer, discover how these parsing techniques are applied in Python and understand the rationale behind CPython's adoption of the PEG parser.
Overview
Syllabus
Introduction
Motivation
Python compilation steps
Contextfree grammar
Before and after
Traditional parser implementation
Topdown recursive parser
LL1 parser
LR Password
Why use PEG parser
Traditional vs PEG parser
Taught by
EuroPython Conference