> On 5/8/2011 11:08 PM, Hartmut Kaiser wrote: > > Just a question: what's your rationale of limiting the generated pp > headers to an arity of 10? > > MPL and Phoenix have it set up for higher arities as well (as you > probably know). > > Phoenix doesn't have it set higher. Or, it did, but it was a bug. > Perhaps you meant Fusion. Yes, it's higher for Fusion and MPL. The reason > for 10 and not something higher (yet) is because there is N^2 overloads of > expr::operator() on compilers that don't support variadic templates. And > with BLL and Bind and Phoenix, there's a history of supporting arities up > to 10 and no more. I'm balancing keeping it fast and light(-ish) and > making it useful in the real world.
Hmmm, maybe I misunderstand the situation, but MPL and Phoenix have 5 different versions of preprocessed headers which will be used depending on the LIMITs specified by the user. No unnecessary overhead is created this way. For any LIMIT <= 10 Phoenix uses one set of pp files, for LIMITs <= 20 the next set, etc. This surely creates some additional burden for the author as you have to run wave 5 times, but that's it. Regards Hartmut --------------- http://boost-spirit.com _______________________________________________ proto mailing list proto@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/proto