On Sat, Sep 27, 2014 at 12:54 AM, Christopher Layne <[email protected]>
wrote:

> Couldn't you just not use unproductive_ok and inaccessible_ok?
>
Yes I could, and tried that at first, but that issued warnings I hated
silencing.

>
> On Sep 26, 2014, at 0930 PT, Ruslan Shvedov <[email protected]>
> wrote:
>
> > Unproductive and unaccessible rules can be removed from a grammar easily
> using code like this:
> >
> > # cleanup the grammar using Marpa NAIF
> > my $grammar = Marpa::R2::Grammar->new({
> > start => ...,
> > rules => ...,
> > unproductive_ok => 1,
> > inaccessible_ok => 1,
> > });
> > $grammar->precompute();
> >
> > my $rules = $grammar->show_rules;
> > my @cleaned;
> > for my $rule (grep {!/unproductive|inaccessible/} split /\n/m, $rules){
> > my (undef, $lhs, @rhs) = split /^\d+:\s+|\s+->\s+|\s+/, $rule;
> > push @cleaned_pfg, [ $lhs, \@rhs ];
> > }
> >
> > Working example can be seen here. Just a quick hack, but kind of cool
> and saved my day. I wonder whether such use is legitimate and, if so, can
> it be worth a special method, e.g. Marpa::R2::Grammar::cleanup().
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "marpa parser" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups
> "marpa parser" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"marpa parser" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to