Boost logo

Boost :

Subject: Re: [boost] [phoenix 3] Review
From: Thomas Heller (thom.heller_at_[hidden])
Date: 2011-03-03 15:17:59


On Thursday, March 03, 2011 10:49:13 AM Michael Caisse wrote:
> I have been anticipating this mini-review since the Phoenix V2 review
> results were first announced. I am a heavy user of Phoenix and am
> excited to see it take it's place as a first class citizen. Thomas has
> done an excellent job at surpassing the requirements for the review and
> making Phoenix an extensible FP tool.
>
>
> Executive Summary: Phoenix 3 has meet the requirements and should be
> moved to the trunk for integration.
>
> -----
>
> The initial review concluded with the following main points needing to
> be addressed in the mini-review.
>
> - the breaking interface changes from v2
> - the migration path from boost::bind and lambda to Phoenix
> - how the interoperability with std::bind is solved (result_of semantics)
> - C++0x features such as rvalue references and variadic templates
> - the new extensibility mechanism
> - unified placeholders and interoperability issues with other Proto-based
> DSELs (such as Spirit.Qi, Spirit.Karma, and Xpressive)
> - compile times
>
>
> Thomas has addressed all of the above points; however, I would like to
> see two of them "documented" differently.
>
> o The Phoenix documentation should have a "What's New" section
> such as Spirit does. It can tersely represent the improvements,
> changes and most of all breaking-changes.

Agree, this probably is a good idea.

> o Compile time is often a concern with libraries that make
> heavy use of expression templates. While I personal don't
> care much about the subject, I also don't see an objective
> way to determine if it is better or worse with subsequent
> releases. Adding a compile time test would be ideal. This
> should be easily invoked and results from various compilers
> reported within the documentation.

Good idea!

> -----
>
> Not on the list of items to review:
>
> o At some point there should be a runtime benchmark added.
Yes, that would be a great addition.

> o Minor doc diffs attached
Thanks, applied.
> o function.qbk : factorial.cpp is missing
Added
> o BOOST_PHOENIX_DEFINE_EXPRESSION_EXT_VARARG bottom of page
> has TBD for the Example
Still need to find a suitable example :)
 
> Thank you Thomas and the Phoenix team for such a wonderful library!

Michael, thanks for the review and your input!

> michael


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk