http://qs321.pair.com?node_id=11126951


in reply to First steps with Marpa::R2 and BNF

3 - Returned structures

First: sorry for the piecemeal replies. I'm playing with your code and refreshing my Marpa as I go - it's been a while since I played with it.

You are getting a "bogus" array because that is the default action and you haven't specified actions for Dice_Expression ::= .... You can fix it by:

Dice_Expression ::= Simple_Dice action => ::first |Dice_with_modifier_x action => ::first |Dice_with_modifier_r action => ::first

which will cause just the hash ref to be returned from $grammar->parse(\$input, 'My_Actions'). See the semantics section in the Marpa::R2 documentation.

Optimising for fewest key strokes only makes sense transmitting to Pluto or beyond