On Wed, Aug 27, 2014 at 8:43 PM, Jeffrey Kegler <
[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]> 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].
>> 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.
>
>
>  --
> 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.
>

-- 
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