
* What is your evaluation of the design? * What is your evaluation of the implementation? * What is your evaluation of the documentation? No opinion on the design, implementation or documentation. All seemed adequate for a small macro. Initially, my thought was, here we go again, another macro utility. I didnt like the "FOR_EACH" macro that got accepted into boost late last year either. In my mind, this "ScopeExit" macro would have to be extrodinarly useful for me to use it in my code. I don't mind that library authors use macros internally, but for "public" code, and a full blown boost library, I'm not convinced. * What is your evaluation of the potential usefulness of the library? I wont be using it. However, thats just me, I dont like macros. * Did you try to use the library? With what compiler? Did you have any problems? No. Just read the documentation. * How much effort did you put into your evaluation? A glance? A quick reading? In-depth study? Less than 1 hour. * Are you knowledgeable about the problem domain? Yes. And finally, every review should answer this question: * Do you think the library should be accepted as a Boost library? Be sure to say this explicitly so that your other comments don't obscure your overall opinion. No. I fear that this macro, along with the "FOR_EACH" macro, that boost developers are warming up to "macros" in general. We should stick to standard syntax, even if the standard syntax is verbose and ugly. Macros always come back to bite you. My no vote is sole based on my dislike of macros. Macros internal to a library are fine, but for a public interface, I'm not persuaded.

on Wed Aug 22 2007, "Tom Brinkman" <reportbase-AT-gmail.com> wrote:
No. I fear that this macro, along with the "FOR_EACH" macro, that boost developers are warming up to "macros" in general. We should stick to standard syntax, even if the standard syntax is verbose and ugly. Macros always come back to bite you. My no vote is sole based on my dislike of macros. Macros internal to a library are fine, but for a public interface, I'm not persuaded.
I disagree with that in just about every way; it seems like the worst kind of FUD, and it's factually inaccurate to boot. Boost developers in general have been warm to "macros" ever since BOOST_STATIC_ASSERT, which was one of the very first public Boost library components. We use macros *extensively* throughout many libraries, and, when appropriate, in library interfaces. In nine years they haven't "come back to bite us," and in many cases have shown themselves to be superior to any available alternative. -- Dave Abrahams Boost Consulting http://www.boost-consulting.com The Astoria Seminar ==> http://www.astoriaseminar.com
participants (3)
-
David Abrahams
-
Martin Wille
-
Tom Brinkman