Boost logo

Boost :

Subject: Re: [boost] Determining interest: C++11 parser generator library
From: Gene Bushuyev (408727_at_[hidden])
Date: 2011-11-14 12:08:24

"John Bytheway" <jbytheway+boost_at_[hidden]> wrote in message
> On 13/11/11 23:39, Gene Bushuyev wrote:
>> Sorry if it turns out to be a duplicate, it looks my original post was
>> lost in cyberspace, so I'm re-posting this request.
>> I'm trying to determine if there is a sufficient interest for including
>> AXE C++11 recursive descent parser generator library in Boost. The
>> zipped sources and documentation are here:
> People are more likely to investigate if you can provide a link to the
> documentation online somewhere, so they don't have to download and
> extract a zip file.
> It would also be useful to explain briefly how it compares with
> Boost.Spirit.
> John Bytheway

It's true there is a significant overlap with Spirit. It's also true there
is more than one way to do the parsing, so some people will be more
comfortable with Spirit, and I have reasons to believe some people will be
more comfortable with AXE. There are differences, importance of which
depends on personal perspective and needs. I tried to summarize below what I
would consider advantages of AXE:

* it's a much smaller header only library: 15 files, 126 KB total
* it has no dependencies on other libraries apart from the Standard library
* it uses only standard facilities, so theoretically it should work with any
C++11 compiler without any modifications
* compilation times are much shorter than Spirit
* the syntax is less cryptic than Spirit, so it's easier to remember, write,
debug, and read parsers written in AXE (this is, of course, subjective)
* in my limited comparison, parsers written in AXE take fewer lines of code
to write, and development times are shorter

* AXE requires C++11 compiler, current status of compiler support is unknown
* It's been released recently, thus there is limited experience working with

The link to the reference is here:

-- Gene Bushuyev

Boost list run by bdawes at, gregod at, cpdaniel at, john at