Skip to Content
Perl 6 Deep Dive
book

Perl 6 Deep Dive

by Andrew Shitov
September 2017
Beginner
402 pages
9h 52m
English
Packt Publishing
Content preview from Perl 6 Deep Dive

Matching a grammar

Our sample program, which will be parsed line by line in the rest of the chapter, looks like this:

my $x;$x = 5;say $x; # 5 my $y;$y = $x;say $y; # 5my $z;$z = $x + $y;say $z; # 10

This is a valid Perl 6 program, and we have to create the grammar that parses and executes it.

Let us save the reference program in a separate file, say, refer.pl, and use the parsefile method instead of the parse one:

my $result = G.parsefile('refer.pl');say $result;

This program prints the whole content of the file, as the TOP rule still matches with everything it gets. To make sure the grammar is parsing the whole file, let us add anchors to tie the beginning and the end of the text:

grammar G {    rule TOP {        ^ .* $    }}

You may feel free ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Perl Hacks

Perl Hacks

Chromatic, Damian Conway, Curtis Ovid Poe, Curtis (Ovid) Poe
Learning Perl 6

Learning Perl 6

brian d foy
Think Perl 6

Think Perl 6

Laurent Rosenfeld, Allen B. Downey
Pro Perl

Pro Perl

Peter Wainwright

Publisher Resources

ISBN: 9781787282049Supplemental Content