Building a Parser from Scratch

Video description

Understand the underlying theory behind recursive descent parser for a programming language

About This Video

  • Learn about basic expression and tokenizer
  • Learn about program structure and AST formats
  • Learn about control flow and functions

In Detail

Parsing or syntactic analysis is one of the first stages in designing and implementing a compiler. A well-designed syntax of your programming language is a big motivation why users would prefer and choose your language.

Recursive descent parsers are the group of parsers that are widely used in practice in many production programming languages. In contrast with automated parsing algorithms, the manual implementation allows having full control over the parsing process and handling complex constructs, which may not be possible in the automatic parsers.

Besides, implementing a full manual parser from scratch allows understanding and seeing this process from inside, demystifying internal structures, and turning building parsers into an interesting engineering task.

In the Building a Parser from Scratch class, we dive into pure practical implementation, building and learning different aspects of parsers.

In this course, you will learn the concept of recursive descent parsing, understand what is tokenizer and how it cooperates with the parser module, learn what is Abstract Syntax Tree (AST) and how to have different formats of these ASTs, what is "lookahead" and predictive parsing, and eventually build a parser for a full programming language, similar to Java or JavaScript.

Publisher resources

Download Example Code

Product information

  • Title: Building a Parser from Scratch
  • Author(s): Dmitry Soshnikov
  • Release date: April 2021
  • Publisher(s): Packt Publishing
  • ISBN: 9781801075107