Boost logo

Boost :

From: Scott Woods (scottw_at_[hidden])
Date: 2007-04-16 23:23:28


----- Original Message -----
From: "Stjepan Rajko" <stipe_at_[hidden]>

> The usage example goes something like:
>
> marshall::registry<int> reg;
>
> reg.set<void (int, int)>(2, func2); // register function
> reg.set<void (int)>(1, func1); // register function
> reg.set<void ()>(0, func0); // register function
>

Just a bullet-point review of your example of marshalling in case
I'm missing something;
* a register of return type+parameter list, keyed on small, unique integer,
* generate portable image (string) of a call, i.e. "marshall",
* call the registered function using one of several available conventions.

>
> Anyway, If Channel can already do this, cool... If not and someone
> wants to lead getting a marshalling thing together, or finishing the
> Boostification of Channel, I can help a little but I need to focus on
> the signal network library for GSoC.

I would also like to see marshalling in Boost. An early $0.02 worth is that
persistence, serialization, async sockets and state machines are all subtly
related and that huge benefits might be realized from exploring this. Oh and
that marshalling is just a combination of some of the above items.

>
> In any case, I'd be interested in getting some marshalling into boost
> because that allows for distributed signal networks that can not only
> pass signals from one computer to another but also execute RPCs.

That would be inherent, i.e. the ability to execute RPCs is a freebie
once distributed signaling is working? I dont mean literally, more that
an RPC would be achieved through an exchange of a particular set
of signals.

Scott


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