
On Thu, Dec 2, 2010 at 11:15 PM, Denis Shevchenko <for.dshevchenko@gmail.com> wrote:
On 02.12.2010 17:58, Hartmut Kaiser wrote:
All of your stated goals could be achieved by using Spirit underneath as the parser engine for your config file format, no?
Regards Hartmut
Strictly speaking, yes.
Be honest, I did not use Spirit because (imho) it's difficult-to-study library. I may be wrong, but I was easier to write own parser engine using Boost.String algo, Boost.Regex and std::algorithm (the more so becausethe complexity of parsing there is not so high).
Have you tried it yet? Unfortunately I have the reverse of your experience. Parsing with a big switch and implementing my own DFA for incremental HTTP parsing is so ugly and unintuitive that I've had to rely too much on trial and error while doing it. I long for the day when I can just define a restartable Boost.Spirit based composed parser and not have to worry about the parsing details -- I really want to define my parsers now in a declarative way that Boost.Spirit across all the versions I've used (Classic and v2.x), and hopefully that won't be too far in the future. Just my $0.02 worth. -- Dean Michael Berris deanberris.com