Parsing with Perl 6 Regexes and Grammars: A Recursive Descent into Parsing

Front Cover
Apress, Dec 4, 2017 - Computers - 201 pages
0 Reviews
Write good regexes and parsers with the Perl 6 programming language. You’ll see how regexes are used for searching, parsing, and validation: in particular the grammar extension makes them uniquely suitable for parsing, the main focus of this book. Written by Perl 6 expert Moritz Lenz, a core contributor of Rakudo, Parsing with Perl 6 Regexes and Grammars starts from the very basics of regular expressions, and then explores how they integrate with regular Perl 6 code. Then follows a deeper exploration of how regexes work under the hood and a discussion of common techniques for constructing regexes and exploring the data under scrutiny. Later material goes beyond relatively simple formats to reusable named regexes and grammars, which permit code reuse in grammars, and shows how to write parsers for more involved data formats. Error reporting and case studies wrap up the topic.
While regexes allow you to search for patterns in text and validate input, Perl 6 regexes advance that concept: you’ll see how they are easier to read, yet much more powerful, than the traditional "Perl-compatible regular expression". With improved reusability and backtracking control, you will be able to write complete parsers with the help of this book.
What You'll Learn
  • Discover the building blocks of Perl 6 regexes
  • Handle regex mechanics and master useful regex techniques
  • Extract data and work with patterns among these use cases
  • Reuse named regexes and other grammars as components or templates
  • Write full parsers, including advanced error reporting and data extraction
  • Learn how to parse nested scopes and indention-based formats

Who This Book Is For
Those with at least some prior experience with Perl programming, but who may be new to Perl 6 as well as searching and parsing.
 

What people are saying - Write a review

We haven't found any reviews in the usual places.

Contents

What are Regexes and Grammars?
1
Getting Started with Perl 6
7
The Building Blocks of Regexes
17
Regexes and Perl 6 Code
33
Extracting Data from Regex Matches
47
Regex Mechanics
57
Regex Techniques
75
Reusing and Composing Regexes
90
Parsing with Grammars
109
Extracting Data from Matches
135
Generating Good Parse Error Messages
147
Unicode and Natural Language
159
Case Studies
165
Index
195
Copyright

Other editions - View all

Common terms and phrases

About the author (2017)

Moritz Lenz is a software engineer and architect. In the Perl community, he is well known for his contributions to the Perl 6 programming language, the Rakudo Perl 6 compiler, related test suite, infrastructure and tools. At his employer, noris network AG, he introduced continuous delivery for many in-house developed applications, and now wants to share his experience with the wider world.

Bibliographic information