Overview
Explore the intricacies of generating parsers in C++ with Maphoon in this CppCon 2022 conference talk. Delve into theory-based bottom-up parsing as Hans de Nivelle introduces a C++17 tool for creating efficient parsers. Learn about the two-stage parsing process, including tokenizing and building Abstract Syntax Trees (AST). Discover how to use regular expressions and custom code for tokenizing, and how to describe formal grammars to build ASTs. Gain insights into the tool's user-friendly design, support for modern C++, and its ability to demonstrate parsing processes and underlying automata. Understand the advantages of runtime operator definition and improved error message handling in bottom-up parsing.
Syllabus
Intro
About Kazakhstan
How did it start
Parser generators
What is parsing
Tokenizing
Why tokenizing
Lack of flexibility
Flexibility
FileReader
Token Recognition
Try Identifier
Automata
Formal Verification
States
Lambda
Auto
deterministic
extra words
Classifier
Replacing the code
Conclusion
Taught by
CppCon