
At Fri, 15 Oct 2010 19:22:16 -0400, Matt Calabrese wrote:
To see how the macro is used go here: http://codepaste.net/4u34ma
Nice!! Now are you ready to write BOOST_PARAMETER_AUTO_FUNCTION? :-)
<http://codepaste.net/4u34ma>As of right now variadic macros are required, however, I could easily make them optional if I always require users to put more parenthesis in particular places (I.E. surrounding the code in a "requires" regardless of whether or not there is a comma there), though I'm not certain that I wish to go this route as, as far as I'm aware, all compilers that support trailing return type also support variadic macros.
Yeah, and C99 preprocessor is required for C++0x, so I wouldn't bother.
So, implementing it without variadic macros may just be forcing programmers to use lisp-level amounts of parentheses for no reason.
Yep.
I was hoping to have everything documented and up by now, but I'm still fleshing things out. At this time I'm working on some tricks to make misuse reported in an easy-to-read manner through some fancy preprocessor tricks and static_assert/mpl assert message. After that I believe it should be done.
This is very cool. Questions * The "keywords" are getting a bit long. Could you think of shorter names? Super bonus for finding a way to make them highlight distinctively ;-) * is it possible to make all return types lazily computed, so there's no need for lazy_result_type? I'm not saying I see how to do this, but you might :-) * What is (end) and where is it needed? -- Dave Abrahams BoostPro Computing http://www.boostpro.com