Boost logo

Boost Announcement :

Subject: [Boost-announce] [Review] Phoenix V3: Mini-review starts February 20th
From: Hartmut Kaiser (hartmut.kaiser_at_[hidden])
Date: 2011-02-21 07:32:27

Hi all,

Thomas Heller worked hard to address the outstanding issues of the original
Phoenix review. He ported Phoenix to Boost.Proto. As mandated by the
original Boost review, we will conduct a mini-review of his Phoenix V3

This mini-review starts today, February 20th, 2011 and ends on March 2nd,


About the library:

The Phoenix library enables FP techniques such as higher order functions,
lambda (unnamed functions), currying (partial function application) and lazy
evaluation in C++. The focus is more on usefulness and practicality than
purity, elegance and strict adherence to FP principles.

Phoenix is a very important infrastructure library. It is currently a
utility library included with Spirit V2 and therefore is already available
for years from the latest Boost distributions (headers:
$BOOST_ROOT/boost/spirit/home/phoenix, docs:
$BOOST_ROOT/libs/spirit/phoenix, or


The code of new Phoenix V3 (that's what we mini-review) can be found at:

the documentation is at:


Here are the questions raised during the initial review of Phoenix in
September 2008 (see here:

We will have a mini review before Phoenix gets merged to SVN to make sure
whether the feedback from the v2 review was accommodated. Additionally this
review will have to discuss:

- 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

Please note that Phoenix already has been accepted as a Boost library. We
don't vote about that anymore. The purpose of this mini-review is to discuss
if the newly rewritten Phoenix V3 addresses the outstanding issues from the
main review. In the end I will have to make the decision whether to include
the new library into SVN trunk.

I really hope to see your participation in the discussions on the Boost
mailing lists!

Regards Hartmut
Review Manager


Boost-announce list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at