Skip to content

Commit

Permalink
Qualifying some statements
Browse files Browse the repository at this point in the history
  • Loading branch information
JJ committed Oct 9, 2018
1 parent 9ca6c44 commit e8ed953
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions doc/Language/grammars.pod6
Expand Up @@ -90,14 +90,20 @@ they are declared with the C<grammar> keyword instead of C<class>. Grammars
should only be used to parse text; if you wish to extract complex data, you can
add actions within the grammar, or an
L<action object|/language/grammars#Action_objects> is recommended to be used in
conjunction with the grammar. If action objects are not used, C<.parse> returns a L<Match> object and sets, by default, the
conjunction with the grammar. If action objects are not used, C<.parse> returns
a L<Match> object and sets, by default, the
L<default match object C<$/>|/syntax/$$SOLIDUS>, to the same value.
=head2 X«Proto regexes| :sym<>; proto regex; declarator,grammar»
L<Grammar|/type/Grammar>s are composed of rules, tokens and regexes; these are
actually methods, since grammars are classes. These methods can share a name and
actually methods, since grammars are classes.
N<They are actually a special kind of class, but for the rest of the section,
they behave in the same way as a I<normal> class would>
These methods can share a name and
functionality in common, and thus can use L<proto|/syntax/proto>.
For instance, if you have a lot of alternations, it may become difficult to
Expand Down

0 comments on commit e8ed953

Please sign in to comment.