On Fri, Mar 21, 2008 at 03:46:12PM +0000, Richard Jones wrote:
> On Fri, Mar 21, 2008 at 01:03:30PM +0100, Philippe Strauss wrote:
> > More specifically, I'm looking for IPC and data exchange
> > mechanism.
>
> How much data are you going to be throwing around?
>
> Mainly binary or text?
>
> What RPC/marshalling capabilities does Objective C have?
data bandwidth: let say 1000 * float32, 100 times per seconds, it's just
a rough estimation.
I think a binary format consume less CPU resource to parse, I mean a fairly
simple binary format, like C + endianness correction. BER/DER are
probably not any better than binary->text coding, so let's go
for a binary format.
Obj-C Marshalling/unmarshalling:
http://en.wikipedia.org/wiki/Serialization#Objective-C
http://opengrok.creo.hu/openbsd/xref/src/gnu/lib/libobjc/libobjc/objc/typedstream.h
> There's a timely thread on caml-list at the moment called 'Long-term
> storage of values', although it hasn't yet reached the caml-list
> archives. If you are on caml-list I suggest looking at the latest
> postings in that thread.
thanks for the tip, will look at it when archived.
> > - pipe with handcrafted marshall/unmarshalling of data to exchange.
> > lots of time spilled on programming boring marshalling stuff.
> > - the same using something like ICE / Hydro: heavy XML parsing
> > if you want to exchange loads of data to be displayed in
> > real-time with open-gl for example.
> > - YAML: a bit lighter, but still text based, I think a binary
> > format would be more compact and lighter to convert.
> > Syck seems somewhat unmaintained now.
> >
> > - Shared mem and procedures to convert between C/ObjC and OCaml
> > data representation?
>
> XDR is another possibility. It's lightweight and standardized,
> although last time I looked Mac OS X's rpcgen was seriously rubbish.
> You might try PortableXDR instead:
>
> http://et.redhat.com/~rjones/portablexdr/
thanks.
--
Philippe Strauss
av. de Beaulieu 25
1004 Lausanne
http://philou.ch
.