Boost logo

Boost :

Subject: Re: [boost] [local] Help for the Alternatives section
From: Lorenzo Caminiti (lorcaminiti_at_[hidden])
Date: 2011-03-27 22:51:42


On Sun, Mar 27, 2011 at 11:20 AM, Thomas Heller
<thom.heller_at_[hidden]> wrote:
> On Sunday, March 27, 2011 05:38:23 PM Lorenzo Caminiti wrote:
>> On Sun, Mar 27, 2011 at 10:04 AM, Thomas Heller
>> <thom.heller_at_[hidden]> wrote:
>> > On Saturday, March 26, 2011 11:19:46 PM Lorenzo Caminiti wrote:
>> >> Hello all,
>> >>
>> >> I am updating Boost.Local docs and I could use a some help in getting
>> >> the Alternatives section right
>> >>
>> >
> http://svn.boost.org/svn/boost/sandbox/local/libs/local/doc/html/boost_local/Alternatives.html
>> >
>> > I would really like to see the first row removed ...
>> > All alternatives you describe are using C++ syntax ... I know what you mean.
> But
>> > all the examples use regular C++ syntax.
>>
>> I don't think think that Boost.Lambda and Boost.Phoenix use the usual
>> C++ syntax to program the "function" body.
>
> Usual is just a point of view.

Yes, "usual" it's just a point of you. I can add a footnote stating just that.

>> If you suggest a text different than "Program body using C++ syntax" I am
>> happy to consider changing the title of the row but I think the row itself
>> should remain there.
>>
>> This row indicates if the "function" body is programmed using the C++
>> syntax that programmers normally use to program C++ function bodies
>> (and not other C++ constructs).
>
> Well, still misleading. It doesn't make it invalid or "unusual" C++ syntax.
>
> We had this discussion before ... It is valid and legal C++. Both in syntax and
> semantic.
> The difference is that you need some extra function calls, pay attention to some
> oddities etc. with phoenix and lambda. But it stays valid C++ syntax.

Yes, of course it's all valid C++ since it compiles. I can also add
that to the footnote.

>> > Another thing what i really wonder is: You write that local classes can not
> be
>> > passed as a template parameter.
>> > I don't really get the difference between the local class and Boost.Local.
>> > What about this:
>> > ...
> http://svn.boost.org/svn/boost/sandbox/local/libs/local/doc/html/boost_local/Implementation.html#boost_local.Implementation.local_functions
>
> ... doesn't really tell me anything, too verbose. And scattered with
> implementations details. A small English prose like text would help here ...
> probably.
>
> So it works because add has some pure virtual base class as static type! Aha ...

OK, I understand. Yes, I will add a paragraph to the docs explaining the trick.

Thanks,

--
Lorenzo

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