Sure, here you are <https://github.com/jeffreykegler/Marpa--R2/issues/75>.
On Sat, Jan 11, 2014 at 9:16 PM, Jeffrey Kegler < [email protected]> wrote: > The fix is more comlex because whatever form the action descriptor takes > must be parsed later on in the code. Could you create an issue for this in > the Github repository? I am hot on the trail of other, I hope very > promising, improvements, and I want to put this lower on the priority > queue. The github issue will help ensure I do not forget, and allow you > and others to track it. > > -- jeffrey > > > On 01/10/2014 08:04 AM, Ruslan Shvedov wrote: > > On Fri, Jan 10, 2014 at 5:59 PM, Jeffrey Kegler < > [email protected]> wrote: > >> The behavior described seems tol be as documented. "Discarding" is of >> lexemes, and does not happen inside lexemes. That is, the lexemes form a >> series of tokens, some of which are discarded. But discarding does not >> happen "within" the lexeme. >> >> If you are discarding space, but also want a lexeme to contain spaces, >> you have to arrange for that in some other way. One is what you suggest: >> "Change "~" to "::=". Another is to change the separator of <result item >> descriptor list> to include the spacing around a comma. >> >> This was a quick answer -- let me know if I've missed the point. >> > Nope, thanks, the answer is quite to the point. > > What happended was I tried to write *[start, length, values]* with > spaces in a SLIF grammar and its creation failed. > > This patch to metag.bnf, per your suggestion, would allow spaces > > -<array descriptor> ~ '[' <result item descriptor list> ']' > -<result item descriptor list> ~ <result item descriptor>* separator => [,] > +<array descriptor> ::= '[' <result item descriptor list> ']' > +<result item descriptor list> ::= <result item descriptor>* separator => > [,] > <result item descriptor> ~ 'start' | 'length' | 'value' | 'values' > > -- jeffey >> > ruslan > > >> >> On 01/10/2014 07:05 AM, Ruslan Shvedov wrote: >> >> String '[ start, length, values ]' can't be parsed with the grammar >> below, as more fully described in the attached script, unless <result item >> descriptor list> is changed to G1 rule. >> >> <array descriptor> ::= '[' <result item descriptor list> ']' >> # the test passes (whitespaces are discarded) if the below line becomes >> a G1 (s/~/::=/) rule >> <result item descriptor list> ~ <result item descriptor>* separator => [,] >> <result item descriptor> ~ 'start' | 'length' | 'value' | 'values' >> >> :discard ~ whitespace >> whitespace ~ [\s]+ >> >> The following exception is thrown: >> >> Error in SLIF parse: No lexemes accepted at line 1, column 10 >> Lexer "L0" rejected 1 lexeme(s) >> Rejected lexeme #1: <result item descriptor list>; value="length,"; >> length = 7 >> * String before error: [ start,\s >> * The error was at line 1, column 10, and at character 0x006c 'l', ... >> * here: length, values ] >> >> -- >> 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/groups/opt_out. >> >> >> -- >> 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/groups/opt_out. >> > > -- > 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/groups/opt_out. > > > -- > 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/groups/opt_out. > -- 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/groups/opt_out.
