[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] s11n + rpc

From: Thomas Chust
Subject: Re: [Chicken-users] s11n + rpc
Date: Sun, 13 Nov 2005 21:23:07 -0000
User-agent: Opera M2/8.02 (MacPPC, build 2148)

Am 12.11.2005, 14:48 Uhr, schrieb Sean Doran <address@hidden>:

On 12 Nov, 2005, at 13:58, felix winkelmann wrote:

I'm not sure how to proceed, though.

One approach would be to translate the binary output into a tagged/ marked-up format like *gasp* XML...


CHICKEN already has the xml-rpc egg for this kind of stuff if you really
need XML. If you just want some compatible textual format, you can always
send data structures as S-expressions using write.

A switch from binary to textual data representation does not solve the
problem of different machine capabilities on the sending and receiving
end, though.

The good thing about the s11n egg is just that it can serialize every first
class object type chicken has, which is why I based my RPC system on it
(some objects like hash tables and procedures don't have a standard textual

On the other hand, a markup language could tell the receiver that it must maintain a certain precision or fail. Who knows what could evolve?

Whether you use a binary format or a textual one still doesn't matter here,
but this idea sounds good to me.

You could keep the scheme source around and serialize that... That presents lots of work for the receiver, but a memoization approach could avoid recompilation of already-received procedures. This seems to call for a globally unique ID for the serialized procedure, and could be optimized with an ihave/sendme kind of dialogue.
This approach could be used for any serialized object, not just procedures.

You could do that very easily, I think. But I would vote against it, because
it is rather inefficient -- and inefficiency is not precisely why I turn to
distributed computing -- and, more important, because this seems to me not
more portable or interoperable than the s11n approach to procedure
serialization as there are several evaluation environment and macro expansion
issues complicating the basic concept.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]