Boost logo

Boost :

Subject: Re: [boost] Is there any interest in a library for actor programming?
From: james (james_at_[hidden])
Date: 2013-06-10 16:30:47


On 10/06/2013 13:59, Dominik Charousset wrote:
> On 08.06.2013, at 20:11, David Sankel<camior_at_[hidden]> wrote:
> >The same argument can be used for any dynamic vs. static type argument. The
> >user base of this library has already taken a stance on the issue by their
> >choice of C++. That may be why there is so much push back to the current
> >dynamic approach of libcppa.
> I think providing a strongly typed subset of the library along with the "fully dynamic" version should be a good middle ground. Type safe actors will be more or less lifted functions, where we can derive all the type information we need from the signature.
If you are going to be strongly typed then I would suggest using some
kind of message and actor interface compiler and generating code. Using
something that is strongly typed with C++ at both ends of the wire is
going to be fragile in terms of requiring 'big bang' deployments and
also extremely constraining through an inability to communicate with
other language runtimes.

>This mimics the python approach to check types at runtime. The whole
>benefit of compile time safety is that we get guarantees about code
>correctness*before* we run.

(to David - sorry!)

I don't think that the limited correctness you get from that is very useful in a concurrent system. It may ensure that teh form of messages is compatible, but not what they mean, nor any ordering guarantees, and the flip-side is that you have the schema migration issues. IMO its why object databases never went anywhere, and the lingua-franca of SQL (and blob databases with JSON-like data) have been supreme.

James


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