Boost logo

Boost :

Subject: Re: [boost] Rave for proposed Boost.Local (functions)
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2011-02-05 12:42:57


AMDG

On 2/5/2011 9:26 AM, Lorenzo Caminiti wrote:
> On Fri, Feb 4, 2011 at 5:03 PM, Alexander Nasonov<alnsn_at_[hidden]> wrote:
>> Steven and I were playing with different syntaxes few years ago
>>
>> We came up with something like this:
>>
>> void BOOST_LOCAL_FUNCTION
>> ( BOOST_BIND((factor)(&sum)), double num )
>> {
>> sum += factor * num;
>> std::clog<< "Summed: "<< sum<< std::endl;
>> }
>> BOOST_LOCAL_FUNCTION_DECL(add)
>>
>> http://thread.gmane.org/gmane.comp.lib.boost.devel/168612/focus=168694
>
> Yes, Alex that is exactly where I started and I cannot thank you
> enough for your Boost.ScopeExit work which has served as a solid basis
> for my Boost.Local development.
>
> However:
> 1) How is this syntax is preferable to Boost.Local parenthesized
> syntax? To me, there is not much difference.*

The argument list is more readable, because it's
closer to normal C++ syntax.

> 2) How would you pass multiple local function parameters (not just the
> one parameter `num`) using this syntax?

Black magic. I don't remember how, but
I know we did figure this out.

> 3) Can you generate local function that are passed as template
> parameters using this syntax?
>

I think so. It wouldn't be very useful otherwise
would it?

In Christ,
Steven Watanabe


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