Boost logo

Boost :

Subject: Re: [boost] [Review] Phoenix V3: Mini-review starts February 20th
From: Thomas Heller (thom.heller_at_[hidden])
Date: 2011-02-26 03:10:29

On Saturday, February 26, 2011 08:59:06 AM Vicente Botet wrote:
> Hartmut Kaiser wrote:
> > 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
> > library.
> Hello,
> As the documentation don't states explicitly what has been changed, could
> you give the links where we can find how the issues
> - the breaking interface changes from v2
The result_of protocol. Apart from phoenix::function, the frontend API
didn't change, phoenix::function now only recognizes Function objects
conforming to the result_of protocol.

> - the migration path from boost::bind and lambda to Phoenix
> - how the interoperability with std::bind is solved (result_of semantics)
The interoperability is fully given, all tests from the bind testsuite pass.

> - C++0x features such as rvalue references and variadic templates
None of these techniques were implemented.

> - the new extensibility mechanism
This is documented.

> - unified placeholders and interoperability issues with other Proto-based
> DSELs (such as Spirit.Qi, Spirit.Karma, and Xpressive)
Unified palceholders are documented. Interoperability with other Proto-based
DSELs comes naturally with the use of proto.

> - compile times
This is probably the weakest part of Phoenix V3 at the moment. Compile times
are slightly higher than with Phoenix V2. Keep in mind though, that Phoenix
V3 is, due to proto, able to do more. More features come at a price.
> have been addressed without taking too much time?

Hope that helps!

> Thanks,
> Vicente

Boost list run by bdawes at, gregod at, cpdaniel at, john at