On Tuesday 12 October 2010 22:37:06 Eric Niebler wrote:
> On 10/12/2010 1:24 PM, Eric Niebler wrote:
> > So it really seems to me that transform_expr is not necessary, but I
> > may be wrong.
> 
> I just confirmed this by trivially replacing uses of transform_expr with
> appropriate uses of nary_expr in your phoenix_test.cpp (attached).
> 
> The only difference is the type of the last expression. Since
> pass_through transform leaves terminals alone, _1 ends up stored by
> reference in the transformed expression, which is perfectly OK and saves
> copies (admittedly trivial in this case).

You are right, transform_expr can be replace by nary_expr. transform_expr is 
a little less verbose but not as flexible, I admit.
The motivation behind transform_expr to have something similiar to fold to 
resemble these "standard" algorithms like fold and transform without 
noticing they are already there. So I guess it would be a nice addition to 
the docs to have a mapping between algorithms people already know to how to 
express it with proto.
_______________________________________________
proto mailing list
proto@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/proto

Reply via email to