Boost logo

Boost :

Subject: Re: [boost] [async] messages threads and networks
From: vicente.botet (vicente.botet_at_[hidden])
Date: 2010-04-24 12:06:13


----- Original Message -----
From: "Scott Woods" <scott_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Saturday, April 24, 2010 2:26 AM
Subject: [boost] [async] messages threads and networks

>
> Hi Boost,
>
> Is anyone interested in a framework for asynchronous programming? This is
> based on the
> thinking contained in;
>
> * SDL (http://www.sdl-forum.org/SDL/index.htm)
> * Active Objects (http://www.cs.wustl.edu/~schmidt/PDF/Act-Obj.pdf)
>
> SDL is the ITU standard for specification of signaling systems. AO is a
> pattern for concurrent programming. These have been combined to create an
> environment where objects exchange
> messages, possibly between threads or even over networks. Objects are
> created simply;
>
> id = create<object_type>();
>
> and once created, anything can be sent to it;
>
> send( anything, id );
>
> The framework takes care of threading, network addresses, queueing, encoding
> and optimal I/O, as appropriate. Threads are equally simple to create;
>
> p = start<message_processor>();
>
> and objects can be assigned to specific threads at creation time;
>
> id2 = create<object_type>( p );
>
> A network server can be created as simply as;
>
> listen = create<socket_listen>();
> server = create<socket_server<my_server> >();
>
> service operational( "loopback:5500", server );
> send( operational, listen );
>
> Connecting is equally simple;
>
> connect = create<socket_connect>();
> client = create<my_client>();
>
> service operational( "localhost:5500", client );
> send( operational, connect );
>
>>From that point on, client and server can exchange messages
> using the send primitive without any knowledge that messages are
> actually travelling across a network. There is in fact no difference
> between inter-thread messaging and inter-processes (i.e. for the
> application).
>
> Feel free to poke around in the software at;
>
> http://groups.google.co.nz/group/pact-serialization/web
>
> I am interested in a Boost review of this library but suspect it is
> too large. It also overlaps with several existing boost components.
> But good to get further opinions.

I have read your last posts about your mega library. I'm interested on the kind of services the library could provide.

I don't think people would spent time to inspect code without the Boost license that reinvent a lot of Boost libraries.
Is there more documentation that the one contained on the link?
Could you show how the objects read the messages?

Note that async is already used by a library under developement https://svn.boost.org/trac/boost/wiki/LibrariesUnderConstruction#Boost.Async

A last point, to request interest on a library maybe the best could be to put "Request for interest" in the title, and show some motivating use cases.

Best,
_____________________
Vicente Juan Botet Escribá
http://viboes.blogspot.com/


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