|
Boost : |
From: Darryl Green (green_at_[hidden])
Date: 2002-10-24 18:53:16
> -----Original Message-----
> From: Joel de Guzman [mailto:djowel_at_[hidden]]
> Spirit is layered. It is header only and you pay only for
> what you use. For small parsing tasks such as the date/time,
> numbers, calculators, the code size is dominated by the
> std::lib support, especially iostream. For example, CW
> reports 25K code size and 7K data size for the comma
> separated number list parser, this includes the vector and
> iostream. The actual instantiated parser, is 5K code size and
> 1.3K data
> size (including the semantic action that stuffs the numbers
> in the vector and the driver code that creates a scanner from
> a std::string).
I think that solves my immediate problem with regex (a simple parser for CGI
params). On the other hand, one of my associates had a quick look at using
the XML parser (same project) and the code size was an issue for us.
Performance wasn't great either (both compared to hard-coded XML parsers
like expat). I suspect we could have improved both though neither of us are
parser experts and time was pressing... Please don't take this as a
criticism of Spirit - it is very impressive, and we suspect it is the user,
not the tool, at fault here, not to mention the fact that modifying expat
isn't something I'd want to try, while modifying the Spirit XML parser was
relatively easy.
Regards
Darryl Green.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk