An advantage of having Ron run the site, is that he can decide this.

Admittedly, my focus on the core algorithm may not be right for someone totally new to Marpa. Perhaps it's better on my own Marpa site.

-- jeffrey

On 08/27/2014 10:22 PM, Ruslan Shvedov wrote:
On Wed, Aug 27, 2014 at 8:43 PM, Jeffrey Kegler <[email protected] <mailto:[email protected]>> wrote:

    Thanks!  The blurb by intent focuses on the Marpa algorithm
    itself, and not its implementation in Marpa::R2.

Yes it does (and you as the author surely know better), but that prompted my suggestion in the first place -- the Marpa homepage is hardly intended only for academics.

I just thought that implementation and applications make an algorithm interesting to more people and thus deserve mentioning alongside it. To this end, a paragraph for each of implementation, applications, and highlights of the algorithm would make the blurb interesting to more readers.

Let's consider the following statements:

    Marpa can parse LRR, LL(k) and LR(k), and LALR grammars. (1) and

    Marpa can parse C, XML, JavaScript, SQL, IDL ... (2)

(1) is more theoretical; (2) is more practical, but they look complimentary and hopefully work well together.

    The rest of Ron's page goes on to address
    implementation/applications/highlights.

Sure, and the blurb can contain links to the other sections of the page.

    As an aside, one thing that I dislike in the promotion of other
    technologies is the mixing in of prototypes, experiments and
    future plans with well-tested and production systems.  Of course,
    when software first comes out, everything is a future or an
    experiment and nothing has a long track record.  But at this point
    I know that Marpa is in use for production in several places, and
    I'd like to form a list of as many of these as it's possible to
    make public.

Very true (and a useful thing to know for me, because I admit to having never thought about it like that), but prototypes, experiments and future plans is what production code comes from, so they can be useful to mention (clearly marked as such, of course) along with production uses.

    -- jeffrey

rns



    On 08/27/2014 06:00 AM, Ruslan Shvedov wrote:
    Looks very good; I'd suggest adding 3 paragraphs: about
    implementation, applications, and highlights as preliminary
    drafted below ([](...) is markdown syntax for hyperlinks):

    Marpa is implemented as a [C library](libmarpa-repo), which is
    currently used from
    [Perl](https://metacpan.org/release/Marpa-R2), [C](...),
    [Go](...), and [C++](...), and can be used from any other
    language which supports linking with C libraries. The next big
    step will be using Lua as an extension language to libmarpa.

    Current Marpa applications include parsers for [C](...),
    [JavaScript](...), [OMG's Interface Definition Language
    (IDL)](...), [SQL](...), [XML 1.0](...), [JSON](...),
    [XPath](...) [to name a few](link to other Marpa applications
    later in the page).

    [The Perl interface to
    Marpa](https://metacpan.org/release/Marpa-R2) supports
    [precedence parsing and n-ary
    
associativity](https://metacpan.org/pod/distribution/Marpa-R2/pod/Scanless/DSL.pod#Synopsis)
 out
    of the box.






    On Tue, Aug 26, 2014 at 9:55 PM, Jeffrey Kegler
    <[email protected]
    <mailto:[email protected]>> wrote:

        I asked Ron Savage to create a new web site to be the public
        face of Marpa -- an "unofficial official" web site.  (Ron has
        editorial control, and mine
        <http://jeffreykegler.github.io/Marpa-web-site/> remains the
        "official official" web site.)  Ron generously agreed and it
        is under construction here <http://savage.net.au/Marpa.html>.

        While rethinking all this, I wrote up a new top-level
        description of Marpa, aimed at those who are totally new to it:
        The Marpa parser is intended to replace, and to go well
        beyond, recursive
        descent and the yacc family of parsers.  It is a new
        algorithm, based
        on prior work by Jay Earley, Joop Leo, John Aycock and R.
        Nigel Horspool.

        * Marpa is fast.  It parses in linear time

           * All unambiguous grammars, unless they have unbounded middle
             recursions which are unmarked. (The LR-regular, or LRR,
        grammars.)

           * Ambiguous grammars, if they are the unions of a
             finite set of LRR grammars.

           * All the grammars that recursive descent parses.
             (These are the LL(k) grammars, a subset of LRR.)

           * All grammars that the yacc family parses.
             (These are the LALR grammars, a small subset of LR(k),
        which is in
             turn a subset of LRR.)

        * Marpa is powerful.  Marpa will parse anything you can
        write in BNF,
        including any mixture of left, right and middle recursion,
        as well
        as cycles.

        * Marpa is flexible.  Like recursive descent, Marpa allows
        you to stop
        and do your own custom processing. Unlike recursive descent,
        Marpa
        makes available to you detailed information about the parse
        so far --
        which rules and symbols have been recognized, with their
        locations,
        and which rules and symbols are expected next.

        Comments welcome.

        Jeffrey



-- 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]
        <mailto:[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]
    <mailto:[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]
    <mailto:[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] <mailto:[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