
Andreas Pokorny wrote:
Joel, Hartmut Kaiser and I have spent a lot of time working out the details of an expression template system that would work for xpressive, Spirit-2 and Hartmut's Karma library. The discussions were public on spirit-devel. Search the archives for "Spirit-2 and Subversion", "Scanner Busines, R.I.P.", "Proto Compiler Visitors", "Fusion-ifying proto parse trees", and "segmented fusion - a-ha!"
In particular, this is the message where the strategy to unify all the ET libraries really crystallized:
http://permalink.gmane.org/gmane.comp.parsers.spirit.devel/2620
It would be great if you could share your thoughts on how you would approach these problems with your new ET library.
I did not yet manage to read all email, but from what I read, you seem to plan using segmented sequences to encode the complete expression tree. The framework instead stores the expression tree mainly in a fusion map. But I think it makes sense to support both encoding variantes. With segmented sequences attributes will not work, and probably not required.
I guess I'm still not clear about "attributes". What are those, really? And why will attributes not work with segmented sequences? or not required?
To be honest, right now, for Spirit-2, I am inclined to use Eric's proto. It's been there for quite some time now and is quite mature. But, like your library, there are no docs yet (as far as I know). I'm not sure when Eric will have the time to get it outside xpressive as a standalone ET library, for review. At any rate, it would be interesting if you can form a collaboration with him. So, instead of having 2 separate ET entries, we can just have one that has the the best of both. Is that possible at all? Or is your library too different from Proto?
I too would be interested in hearing more about your ideas and helping to build a unified ET framework for boost.
unified .. thats the reason why I intended to call the library Boost.Unification :)
Not sure I like the name ;) Regards, -- Joel de Guzman http://www.boost-consulting.com http://spirit.sf.net