> The web site should be aimed at beginners, with clear indications as
> to where experts can go for more details.
Agreed. So far I've been focusing on design, I haven't added much
content.
> Marpa: The foundation of modern, grammar-based, parsers
Thanks, I've been looking for another tagline. I don't really like the
way that that is phrased though, perhaps something like "Marpa: A
modern parser" would sound better.
> - Add a sub-heading, perhaps at h2 level.
I'd like to keep as much as possible above the fold on all sorts of
devices, so more explaining than necessary does have a significant
downside.
> - Add: use strict; use warnings;
I'll do this, although it does push the whitespace tokenization below
the fold on some mobile devices.
> - EOG => END_OF_GRAMMAR makes it much clearer.
>
> The abbreviation is simply unnecessary. Let others do that. Provide
> clean, firm, guidelines for attaining quality.
>
> Likewise for 'Expr', etc.
Same argument as before: This causes wrapping on some mobile devices,
which would push content below the fold.
> - || Expr '*' Expr action => do_multiply # Note 1, 2.
>
> Add notes. Here we could say:
>
> Note 1: The '||' indicates alternative ways of constructing an
> expression.
Done.
> Note 2: do_multiply is a function Marpa will call automatically when
> this alternative of the 'Expr' rule fires.
This seems adequately self-explanatory as-is, but I should find
someone who has no idea what this is all about and see if they
understand.
> - my $value_ref = $grammar->parse( \'7 + 42 * 1', 'Calc' ); #
> Notes 3, 4.
>
> Note 3: Marpa uses a reference here in order to avoid copying what
> could potentially be a huge string.
This isn't particularly important to usage of the library - Perl is
going to be the bottleneck no matter what. I the interest of staying
concise, I'll omit this
> Note 4: A great deal of error checking is built-in to Marpa. Here,
> if there is no parse, or if the parse is ambiguous, parse() throws
> an exception. Hence Try::Tiny.
I'm not too familiar with Perl, but Marpa's regular error handling I
think is adequate for an example. It prints to the terminal, and
that's what most people want.
> - printf("$$value_ref\n") => print "$$value_ref\n";
>
> Add ';'. Simplify.
My lack of familiarity with Perl shows :). Fixed.
> And move this (and => 49) above the subs.
Done.
> 3) The footers Fast, Expressive, Flexible
>
> They are good.
Thanks!
> Add something about accepting utf8 in the grammar and in the input
> stream.
I'd like to avoid explaining with words, so I've changed the
multiplication sign to Unicode `×` instead.
--
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.