I said:

> ... I would have to do a bit more
> work to document the ugly details. So please put your hand up
> soon. And the result should be open source, of course.

I did a very rough documentation job and posted the very rough
code. Look at https://www.cs.auckland.ac.nz/~brian/graspy/remotes/
starting with the README.

As an added bonus, I included a rough draft of the C header file
for a GRASP API. All we need now is a C programmer to do the rest.

Regards
   Brian

On 21/02/2017 17:48, Brian E Carpenter wrote:
> Hi,
> 
> I've been entertaining myself by putting together an IPC interface to 
> the GRASP Python prototype. (As of today, it seems to be working,
> but the code is not fit to publish yet.)
> 
> Why? Because this is what we need for multiple independent ASAs
> to call a single instance of the GRASP core. 
> 
> How? To make the solution portable (not efficient, because this is
> a prototype), I simply use TCP as the IPC mechanism. This would also
> make it rather trivial to turn the thing into a genuine RPC.
> 
> Like any RPC solution, I needed to serialise the calls and the
> returns. How? I decided to use CBOR. The details get a bit ugly,
> but it works. (Primitive ASCII art below.)
> 
> The advantage of using CBOR is that although so far everything is
> in Python, the serialised calls and returns are "just" CBOR/TCP.
> So a smart C programmer, using one of the CBOR libraries, could
> put together an API in C that could then issue GRASP API calls
> via the IPC mechanism.
> 
> I am not a smart C programmer. So here's the challenge: who would
> like to work on this? Before the hackathon, or during the hackathon.
> 
> If someone puts their hand up, I would have to do a bit more
> work to document the ugly details. So please put your hand up
> soon. And the result should be open source, of course.
> 
> (In theory, the approach would apply to any language that has
> CBOR support, but C seems the obvious lowest common denominator.
> Or maybe C++?)
> 
> Who wants in?
> 
>     Brian
> 
> ASA <=> Local <=> IPC  <=> CBOR/TCP <=> IPC  <=> Main <=> GRASP
>         API       client                server   API      core
> 

_______________________________________________
Anima mailing list
Anima@ietf.org
https://www.ietf.org/mailman/listinfo/anima

Reply via email to