
Matt Hurd wrote:
On Thu, 23 Dec 2004 18:53:54 -0500, christopher diggins <cdiggins@videotron.ca> wrote:
I realize that there is of course already the boost::spirit library for parsing, but I have recently released another recursive descent parsing library with a substantially different design. The YARD parser requires grammar productions to be defined as meta-functions and does not use operator overloading. The code base is quite a bit smaller, and I personally find the library easier to use than Spirit (of course I am very biased). The home page at http://yard-parser.sf.net/ . Would there be any interest in this of library for Boost? TIA
Chris,
I like Spirit and have a production system that parses a particular vendors data packets using it. Works well. My only real complaint about Spirit is that it is quite a slow parser. This could be improved by having first / follow set kind of things without an interface change. Spirit is quite good at representing the LL grammars you normal deal with when doing RDP.
FYI, Spirit-2, being developed now, will focus on performance. A limited test case shows a significant increase in speed. And, yes, a deterministic parsing scheme (first/follow) is part of the plan. Actually, you can already take advantage of deterministic parsing using the current switch_p parsers or a technique we call the "Nabialek trick". Surely, more deterministic schemes will be in place. Regards, -- Joel de Guzman http://www.boost-consulting.com http://spirit.sf.net