
on Wed Aug 22 2007, "Tom Brinkman" <reportbase-AT-gmail.com> wrote:
What can I learn from your criticism? What is it based on other than the fact that you don't like macros? By what standard shall we decide that use is "overuse?"
I'm not shur that you can learn much from that criticism. Other than that I like to examine the libraries source code to help me learn about how it works. If the library is full of macros, or complicated templates for that matter, I often will just give up, and rely soley on the documentation.
Gosh, I wish you'd start with the documentation. I put a lot of effort into it so my users will understand how to use the library.
The macro generates all the boilerplate of forwarding functions, handles the "forwarding problem" for the user, evaluates defaults in exactly the lazy way one would like without requiring lambdas or other function objects, avoids exposing ArgumentPacks, ...
I think that those are pretty creative uses of internal macros and I have no problems with those uses. I just hope that I'm never tasked with their maintenance.
Don't worry, I won't ask you to maintain them. But my point was that they are *external* macros. They're invoked directly by the library user. -- Dave Abrahams Boost Consulting http://www.boost-consulting.com The Astoria Seminar ==> http://www.astoriaseminar.com