%{ =head1 SYNOPIS =head1 SYNOPSIS Compile it with eyapp -b '' typicalrr_fixed Execute it with: ./typicalrr_fixed.pm -d -t Try inputs C<4 5>, C<a b> and C<4 5 a b>. =head1 SEE ALSO see typicalrr.eyp, typicalrr2.eyp and correcttypicalrr.eyp =cut use base q{RRTail}; %} %right ID NUM %tree %% s: %name EMPTY /* empty */ | %name LIST s ws %prec ID | %name LIST s ns %prec NUM ; ws: %name ID ID | %name IDS ws ID ; ns: %name NUM NUM | %name NUMS ns NUM ; %% unless (caller()) { $Parse::Eyapp::Node::INDENT = 1; my $prompt = 'Try "4 5 a b 2 3" '. '(press <CR><CTRL-D> to finish): '; __PACKAGE__->main($prompt) }