On Saturday 16 October 2010 04:10:23 Eric Niebler wrote: > On Thu, Oct 14, 2010 at 10:46 PM, Thomas Heller > > <thom.hel...@googlemail.com>wrote: > > So, one of your points of criticism was that my solution was overly > > verbose. > > I like to throw this ball back at you. I think both solutions are quite > > verbose. I guess verbosity is what it takes to get a solution meeting > > the requirements. > > You're right, my solution is verbose, too. The problem is the > open-extensibility requirement. Proto::or_ is concise. The equivalent > proto::switch_ is verbose. There aren't many constructs in C++ that are > openly extensible. Namespaces, overload sets and template > specializations. (Others?) Only template specializations fit the bill, > and specializing a template takes a lot of typing. And if you want the > set of transforms to be also openly extensible and independent of the > grammars, that's twice the boilerplate. Seems unavoidable. > > I'm interested in finding some nice wrapper that presents a cleaner > interface. Maybe even macros could help.
Yes this i a hard problem to tackle. Anyway ... i started the new prototype. I finished the core. I added customization points for placeholders and terminals. I have no time to explain what i have done so far. But want to share if you want to have a preview: http://github.com/sithhell/boosties/tree/master/phoenix/ Will share more this evening. _______________________________________________ proto mailing list proto@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/proto