From: Larry Evans (cppljevans_at_[hidden])
Date: 2008-04-15 12:05:59


On 04/07/08 17:04, Hartmut Kaiser wrote:
[snip]
> participating), out of which 15 have been positive. The one 'No' essentially
> stated that the library, even if doubtless very useful, shouldn't be
> accepted yet, mainly because there has to be done more work in the area of
> formalizing the problem domain.

There was also an issue with separation of transforms from grammars.
This mixing made it hard for me to understand transforms. I believe
separating the two would make understanding for other novice users
easier also. Of course I'm not even real sure that separation is
possible, as I intimated with the '*highly* speculative' qualifier
in my review. However, since then I've been trying to separate the
two. This lead me to understand *maybe* why bundling the two is
necessary. The pass_through transform docs contain:

   , boost::result_of
     < Grammar::proto_childN(Expr::proto_childN, State, Data)
>::type

Now if Grammar::proto_childN is *not* derived from pass_through,
then that would make the above an object CTOR call. Unless
the N-th child has a 3 element CTOR, then this will fail to
compile. OTOH, if then N-th child is derived from pass_through
(IOW, if the grammar and transform are bundled), then this
will compile.

Eric, is that about right?