Hey Jeffrey,
maybe this guy is a potential convert? :-)
https://github.com/ollef/Earley
> The parsing algorithm that this library uses is based on Earley's
> parsing algorithm. The algorithm has been modified to produce online
> parse results, to give good error messages, and to allow garbage
> collection of the item sets. Essentially, instead of storing
> a sequence of sets of items like in the original algorithm, the
> modified algorithm just stores pointers back to sets of reachable
> items.
>
> The worst-case run time performance of the Earley parsing algorithm is
> cubic in the length of the input, but for large classes of grammars it
> is linear. It should however be noted that this library will likely be
> slower than most parser generators and parser combinator libraries.
>
> The parser implements an optimisation similar to that presented in
> Joop M.I.M Leo's paper _A general context-free parsing algorithm
> running in linear time on every LR(k) grammar without using lookahead_
> which removes indirections in sequences of non-ambiguous backpointers
> between item sets.
>
> The implemented algorithm handles all CFGs, with one caveat: any
> production that accepts the empty string (i.e. an epsilon production)
> is only expanded once per position in the input string. This means
> that the parser does not give an infinite number of parse results for
> such grammars. This is usually not a problem.
No idea (and no clue that I can see) whether he is aware of Marpa and/or
your research.
Regards,
--
Aristotle Pagaltzis // <
http://plasmasturm.org/>