On Mon, Feb 25, 2013 at 1:30 PM, Brian Budge <brian.budge@gmail.com> wrote:
>> > Not especially germane to this thread, although, yes, we will be
>> > serializing
>> > the data in some form. What I am focused on here is how to expose these
>> > details into the domain model for processing. For instance, potentially
>> > we
>> > have a parser facet as part of the processing algorithm that can run
>> > parsed
>> > calculations on each
Aha. I think I finally understand what you want. You will have some
domain specific language (DSL) with which you will be describing what
to do to the data. This is like a simplified matlab-type interface?
You load some set of data, and then you want to describe how to
process the data. You're interested in parsing via Spirit, and then
executing some kinds of instructions on all the data. If this is
what you want, you can indeed use Spirit, though there is also
boost.proto which is specifically for DSLs. I can't comment much on
proto, as I have not used the library. Can you confirm if I am on the
right track?
Note that Proto is for compile-time DSL. ie C++ code that looks like a DSL. So the queries would be hard-coded into the C++ code.
Spirit is for parsing text.
Assuming the end-users will be building the queries on the fly, Spirit is probably the right choice.
Tony