It sounds to me like you have one specific problem you are trying to
generalize by sending ADTs across the wire. Microsoft and IBM "solved"
it with Com & Corba - later picked up by GNOME for the same job -
though, of course, they added RPC into the mix.
XML, S-expr, JSON all try and solve the same problem and add REST / SOAP
/ crap de jour for RPC.
Plan9 chose 9p. Seeing as your endpoints already know the layout of the
struct, they present a directory tree to write into.
You mentioned you wanted ALT, your server can do that for you on Clunk.